This course provides a basic understanding of the software that manages a computer's hardware resources to provide a powerful abstract interface on which user programs execute. The course focuses on the control and utilization of processor, memory, storage, and network resources. The concepts in this course include operating system structure, process management and scheduling, interprocess communication, synchronization of concurrent processes, deadlock, main and secondary storage management, virtual memory, file systems, protection and security, and some introduction to networking.
The course content is structured into two parts, a principles part and a projects part. The lectures and projects have been sequenced so that by the time you are working on a project, we have covered the concepts involved in that project in the lectures. Your implementation work in the projects will help make those concepts "real" and anchor these ideas in your understanding.
There are two versions of this course: COMP 421/ELEC 421, intended for undergraduate students, and COMP 521/ELEC 552, intended for graduate student. The lectures for both versions meet together, and the projects and exams for both are the same. However, for students taking the graduate version of the course, COMP 521/ELEC 552, there will be an additional requirement as part of each of the projects.
For More Information: