The study of how an operating system manages a computer's resources — processors, memory, storage and devices — and provides safe, efficient services to the programs that run on it. The course covers processes and threads, CPU scheduling, concurrency and synchronization, deadlocks, memory management and virtual memory, file systems and storage, virtualization and containers, and protection and security.
It is taught as resource management at every scale. The same questions an OS kernel answers for one machine — who gets the resource, when, and how do we keep everyone safe? — reappear in phones, GPU servers, cloud data centers and edge networks. Classic theory is paired with numerical examples, simulators and real Linux practice, and connected to current research on task scheduling, resource allocation and computation offloading in edge–cloud systems.