Operating Systems
This course provides an introduction to software systems with emphasis on operating system design and implementation. A key aspect is computer architecture and system software interaction. Topics include: process management, threading, synchronization, deadlocks, scheduling, security, IO systems, and distributed systems.