This schedule is also available as an ical file that you can subscribe to.
All material covered in the lectures, labs, and required readings may appear on the exams.
Optional readings provide additional explanation of material covered in class that can be useful in preparing for the exams.
Initially, I will post slides or notes from the last incarnation of this course (if they exist), and incrementally replace them with the versions presented in class (perhaps with fixes after class) as the semester progresses.
Papers are only accessible to hosts in the unc.edu domain, although most are available elsewhere online.
Video links are restricted to users with a cs.unc.edu youtube account. If you do not have a cs.unc.edu email address and are registered in the class, please send the instructor your preferred google account to be granted access to the videos.
The schedule of topics is tentative, and may adjust over the course of the semester.
Date | Topics | Notes | Required Readings | Optional Readings |
---|---|---|---|---|
Part 1: Operating System Overview | ||||
Wed 08/24 | Administrative and Introduction |
Slides. Printer friendly slides. Video. | ||
Mon 08/29 | C Programming Review and Lab 0 |
Slides. Printer friendly slides. Video. | ||
Wed 08/31 | History of Operating Systems |
Slides. Printer friendly slides. Video. | Chapter 2. |
|
Fri 09/02 | |
Lab 0 Due. 11:59PM. | ||
Mon 09/05 | Labor Day |
No classes. | ||
Wed 09/07 | Processes and OS Abstractions |
Slides Printer Friendly Slides Video. Academic Integrity Homework Due. |
Chapter 4. |
|
Mon 09/12 | OS APIs |
Slides. Printer friendly slides. Video. |
|
|
Wed 09/14 | Interrupts and system calls |
Slides Printer Friendly Slides Video. | Chapter 6. | Chapter 4 of "Understanding the Linux Kernel." |
Part 2: Virtual Memory | ||||
Mon 09/19 | Address Spaces and Loading |
Slides. Printer friendly slides. Video. | Chapter 13. |
|
Wed 09/21 | Virtual Memory |
Slides. Printer friendly slides.Video. | Chapter 15. | |
Mon 09/26 | Virtual Memory |
Slides. Printer friendly slides. Video. | Chapter 16. | |
Wed 09/28 | Virtual Memory |
Slides. Printer friendly slides. Video. | Chapter 18. | |
Fri 09/30 | |
Lab 1 Due. 11:59PM. | ||
Mon 10/03 | Review Day |
Video. | ||
Wed 10/05 | Exam 1 |
|||
Part 3: Scheduling | ||||
Mon 10/10 | Memory allocators |
Slides. Printer friendly slides. Video. | Hoard: A Scalable Memory Allocator for Multithreaded Applications (Berger, McKinley, Blumofe, and Wilson, ASPLOS 2000) |
|
Wed 10/12 | CPU Scheduling |
Slides. Printer friendly slides.Video. | Chapter 7. | Chapter 7 of "Understanding the Linux Kernel." |
Mon 10/17 | CPU Scheduling |
Slides. Printer friendly slides. | Chapter 8. |
|
Part 4: Threads and Synchronization | ||||
Wed 10/19 | Threads |
Slides. Printer friendly slides.Video. | Chapter 26. | |
Mon 10/24 | Concurrent Programming |
Slides. Printer friendly slides.Video. |
|
|
Wed 10/26 | Locking |
Slides. Printer friendly slides.Video. | Chapter 28. |
|
Fri 10/28 | |
Lab 2 Due. 11:59PM | ||
Mon 10/31 | Condition Variables |
Slides. Printer friendly slides.Video. | Chapter 30. |
|
Wed 11/02 | Deadlocks |
Guest Lecture by Don Smith. Slides. Printer friendly slides.Video. |
Chapter 32. | |
Mon 11/07 | Review Day Video. |
|||
Wed 11/09 | Exam 2 |
|||
Part 5: File Systems | ||||
Mon 11/14 | Disk Scheduling |
Slides. Printer friendly slides.Video. | Chapter 37. |
|
Wed 11/16 | File Systems Basics |
Slides. Printer friendly slides.Video. | Chapter 39. | |
Mon 11/21 | File System Consistency Issues |
Slides. Printer friendly slides.Video. | Chapter 42. |
|
Wed 11/23 | Thanksgiving Recess |
No class. | ||
Mon 11/28 | Linux Virtual File System Layer (VFS) |
Slides. Printer friendly slides.Video. | Chapter 12, 16 and 18 of "Understanding the Linux Kernel." | |
Wed 11/30 | Fast File System |
Video. | Chapter 41. | A Fast File System for UNIX (McKusick, Joy, Leffler, and Fabry, TOCS 1984) |
Sat 12/03 | |
Lab 3 Due. 11:59PM | ||
Part 6: Security | ||||
Mon 12/05 | Computer Security Techniques |
Slides. Printer friendly slides. Video. | ||
Wed 12/07 | Integrated example: Microsoft Xbox |
Don's Notes Video. | 17 Mistakes Microsoft Made in the Xbox Security System (Steil 2005) | |
Wed 12/07 | |
Lab 4 Due. 11:59PM | ||
Tue 12/13 | Final Exam |
12:00 noon - 2:00pm. |
Copyright Notice: These lecture notes, homeworks, and lab assignments are part of an undergraduate course on operating systems. You must ask me permission to use these materials. I do not grant to you the right to publish these materials for profit in any form.
Donald Porter, The University of North Carolina at Chapel Hill
Last updated: 2025-04-23 15:58:27 -0400 [validate xhtml]