This course provides an introduction to the major concepts and principles of operating systems. Topics such as the following are included: process management, scheduling, deadlock, semaphores, memory management, operating system structure, virtual memory, recovery techniques, types of operating systems, and relationships between operating systems and computer hardware and other programs. Programming assignments may include development of system utilities and/or operating system simulations.
Prerequisites: CSC 250. CSC 245 is recommended.
(Offered alternate years)