Lectures
Every class of the August–November 2019 offering, numbered as in the original schedule, with its slides. The textbook is Operating Systems: Three Easy Pieces.
SlidesShort videoReading
Processes and CPU scheduling
Lectures 1–8| Lecture 01 | Logistics and introduction to operating systems |
|
| Lecture 02 | Processes |
|
| Lecture 03 | Process API |
|
| Lecture 04 | CPU scheduling I |
|
| Lecture 05 | CPU scheduling I (continued)Slides as in lecture 4. |
|
| Lecture 06 | CPU scheduling II |
|
| Lecture 07 | MLFQ and limited direct execution |
|
| Lecture 08 | Context switching |
Memory virtualisation
Lectures 9–20| Lecture 09 | Assembly languageA beginner’s guide, by the teaching assistants. |
|
| Lecture 10 | Memory management I |
|
| Lecture 11 | Quiz 1 |
|
| Lecture 12 | Address translation and segmentation |
|
| Lecture 13 | Segmentation and paging |
|
| Lecture 14 | Paging and TLBs |
|
| Lecture 15 | Paging and advanced paging |
|
| Lecture 16 | Free-space managementGuest lecture. |
|
| Lecture 17 | Advanced paging and swapping |
|
| Lecture 18 | Swapping I |
|
| Lecture 19 | Swapping II |
|
| Lecture 20 | Quiz 2 |
|
Linux memory management |
Concurrency
Lectures 21–32| Lecture 21 | Concurrency and threads |
|
| Lecture 22 | Concurrency and threads (continued)Slides as in lecture 21. |
|
| Lecture 23 | Concurrency II: locks |
|
| Lecture 24 | Concurrency III |
|
| Lecture 25 | Concurrency III (continued)Slides as in lecture 24. |
|
| Lecture 26 | Concurrency III: revisionAfter the mid-semester break. Slides as in lecture 24. |
|
| Lecture 27 | Condition variables I |
|
| Lecture 28 | Condition variables II |
|
| Lecture 29 | Semaphores |
|
| Lecture 30 | Semaphores and deadlocks I |
|
| Lecture 31 | Topic not listedThe original schedule lists this class without a topic. |
|
| Lecture 32 | Semaphores and deadlocks II; concurrency bugs |
Persistence
Lectures 33–37| Lecture 33 | I/O devices and hard disks |
|
| Lecture 34 | Hard disks and RAID |
|
| Lecture 35 | RAID II; files and directories |
|
| Lecture 36 | File systems |
|
| Lecture 37 | File system implementation |
Quizzes 1 and 2 were held in class slots 11 and 20. Labs are listed on the Labs page; quizzes, deadlines and exams on Assessment.