The operating system is the invisible infrastructure every program runs on top of. This course covers processes and threads, CPU scheduling, virtual memory, the file system abstraction, and synchronisation primitives.
Outcomes
- Explain how the OS schedules processes and isolates their memory
- Identify the cause of race conditions and apply synchronisation primitives
- Describe the abstraction layers between a running program and the hardware
- Analyse the performance cost of system calls and context switches
Outline
Start →- 01 Processes and Threads Address spaces, the process lifecycle, threads, and the cost of context switching.
- 02 CPU Scheduling FCFS, SJF, round-robin, and priority scheduling: objectives and trade-offs.
- 03 Virtual Memory Paging, page tables, TLBs, and how the OS creates the illusion of unlimited private memory.
- 04 File Systems Inodes, directories, block allocation, and the layers between a file name and raw storage.
- 05 Synchronisation Race conditions, mutexes, semaphores, deadlock, and strategies for correct concurrent programs.