The primary course book is Arpaci-Dusseau et al.: Operating Systems: Three Easy Pieces (Version 1.00). See also the Resources page for other materials.

The self study instructions used throughout the lectures are available in GitLab. The code examples are available on GitHub.

Lecture topics

The following table lists the topics that will be discussed during the lectures. Please make sure to come prepared.

Week Date Content
#1 2023-10-03 Introduction - OS architecture, kernel, programs and processes.
#2 2023-10-10 Program memory layout - code, stack, ELF.
#3 2023-10-17 Program memory layout - heap.
#4 2023-10-24 Program memory layout - garbage collection.
#5 2023-10-31 Parallelism - context switching, scheduling.
#6 2023-11-07 Parallelism - synchronization problems.
#7 2023-11-14 Parallelism - synchronization tools.
#8 2023-11-21 Parallelism - memory models.
#9 2023-11-28 System memory management - paging principles.
#10 2023-12-05 System memory management - paging algorithms and applications.
#11 2023-12-12 System entry points - system calls, interrupts.
#12 2023-12-19 Devices - device drivers, device interfaces.
#13 2023-12-26 Public holiday: no new topic.
#14 2024-01-09 Storage - file systems.