HY345: Operating Systems (website)
Description of operating system procedures and their implementation: multiprogramming, process communication (synchronization, semaphores), context switching, process scheduling, system calls, interrupt handlers, deadlock, device independent I/O, device drivers, disk scheduling, memory management, virtual memory, paging algorithms, file systems, distributed operating systems. Laboratory exercises in modifying and augmenting a simple operating system.