Course Description: Overview of operating systems principles, and the inter-relationship between the operating system and the architecture of computer systems. Topics include multithreading, CPU and I/O device scheduling, process synchronization, deadlocks, and virtual memory organization.