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