Course Schedule
Spring 2026 at a glance. The current week is highlighted automatically; dates are Tuesdays. Expect small shifts as we sync with campus events.
| Week | Date | Topic | Readings | Assignments |
|---|---|---|---|---|
| 1 | 01/13 | Intro to OS, OS structure, toolchains, kernel debugging, and exploring the xv6 kernel | Chapter 0 of the xv6 book |
ex1: readiness exercise (Due: 01/20) |
| 2 | 01/20 | Isolation, system calls, kernel booting | Appendix B and Chapter 1 of the xv6 book |
hw1: utilities and system calls (Due: 01/29) |
| 3 | 01/27 | Virtual memory and paging | Chapter 2 of the xv6 book |
ex2: boot loading exercise (Due: 01/29) |
| 4 | 02/03 | Memory management and mmap | Chapter 2 of the xv6 book |
hw2: page table (Due: 02/12) |
| 5 | 02/10 | Page replacement, kalloc/kfree, interrupts | Chapter 3 of the xv6 book | |
| 6 | 02/17 | Device drivers (keyboard, console and VGA) | Chapter 3 of the xv6 book | |
| 7 | 02/24 | Life of a process; Midterm exam1 | Chapter 5 of the xv6 book | |
| 8 | 03/03 | Context switch, process scheduling, and threads | Chapter 5 of the xv6 book | |
| 9 | 03/10 | Signals; memory barriers, and concurrency | Chapter 4 of the xv6 book | |
| 10 | 03/17 | Multi-core boot, locks, deadlock, conditional variables | Chapter 4 of the xv6 book | |
| 11 | 03/24 | Spring break (no class) | ||
| 12 | 03/31 | Intro to file systems | Chapter 6 of the xv6 book | |
| 13 | 04/07 | File systems in practice | Chapter 6 of the xv6 book | |
| 14 | 04/14 | File systems failure and persistence | Chapter 6 of the xv6 book | |
| 15 | 04/21 | Midterm exam2; recent topics in OS, and review | ||
| 16 | 04/28 | Final Project Presentations |