Course Overview

This course covers what operating systems are, why they are needed, and how they are designed and implemented — including the key mechanisms, abstractions, and policies that operating systems provide.

Topics covered in depth:

  • Processes and process management

  • Threads and concurrency (multithreading challenges)

  • Hardware resource management (CPU, memory)

  • Communication and I/O (including file I/O)

  • Distributed services: Remote Procedure Calls (RPCs), distributed file systems, distributed shared memory

  • Systems software in data center and cloud environments

The Toy Shop Analogy

Throughout the course, OS concepts are illustrated via a toy shop metaphor:

  • Hardware = the toy shop (tools, workspaces, storage areas)

  • Processes/applications = toys being produced

  • Operating system = the toy shop manager who oversees everything