Operating Systems
Processes, threads, scheduling, memory management, file systems, and synchronisation — how an OS manages hardware and isolates programs.
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 →- 01Processes and ThreadsAddress spaces, the process lifecycle, threads, and the cost of context switching.
- 02CPU SchedulingFCFS, SJF, round-robin, and priority scheduling: objectives and trade-offs.
- 03Virtual MemoryPaging, page tables, TLBs, and how the OS creates the illusion of unlimited private memory.
- 04File SystemsInodes, directories, block allocation, and the layers between a file name and raw storage.
- 05SynchronisationRace conditions, mutexes, semaphores, deadlock, and strategies for correct concurrent programs.