Information below is not for the current semester.
The primary course book is Arpaci-Dusseau et al.: Operating Systems: Three Easy Pieces (Version 1.00). See the books section below for other options.
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 | 2022-09-30 | Introduction - OS architecture, kernel, programs and processes. |
#2 | 2022-10-07 | Program memory layout - code, stack, ELF. |
#3 | 2022-10-14 | Program memory layout - heap. |
#4 | 2022-10-21 | Program memory layout - garbage collection. |
#5 | 2022-10-28 |
Parallelism - context switching, scheduling. Public holiday: topic for self study only. |
#6 | 2022-11-04 | Parallelism - synchronization problems. |
#7 | 2022-11-11 | Parallelism - synchronization tools. |
#8 | 2022-11-18 | Parallelism - memory models. |
#9 | 2022-11-25 | System memory management - paging principles. |
#10 | 2022-12-02 | System memory management - paging algorithms and applications. |
#11 | 2022-12-09 | System entry points - system calls, interrupts. |
#12 | 2022-12-16 | Devices - device drivers, device interfaces. |
#13 | 2022-12-23 | Public holiday: no new topic. |
#14 | 2023-01-06 | Storage - file systems. |
Books
If you need more information, there are other excellent books that can help you study. Favorites include:
- Anderson et al.: Operating Systems Principles and Practice
- Silberschatz et al.: Operating System Concepts
- Tanenbaum et al.: Modern Operating Systems
None of these books follows the course exactly, but all contain enough material to suffice as a learning material.
A good book on the computer systems background is Patterson et al.: Computer Organization and Design.