| Week | Date | Topic | Assignments |
|---|---|---|---|
| Week 0 | F 9/28 | Lab 1a assigned | |
| Week 1 | M 10/1 | Course introduction Scribe notes | |
| W 10/3 | Operating systems goals I Scribe notes | ||
| F 10/5 | Lab 1a "due", Lab 1b assigned | ||
| Week 2 | M 10/8 | Operating systems goals II Scribe notes | |
| W 10/10 | Process abstraction & implementation Scribe notes | ||
| Week 3 | M 10/15 | Process interaction I Scribe notes | |
| T 10/16 | WeensyOS 1 due | ||
| W 10/17 | Process interaction II & scheduling Scribe notes | ||
| F 10/19 | Lab 1b due, Lab 2 assigned | ||
| Week 4 | M 10/22 | Scheduling II Scribe notes | |
| W 10/24 | Synchronization I: Finding critical sections Scribe notes | ||
| Week 5 | M 10/29 | Synchronization II: Hardware synchronization Scribe notes | |
| W 10/31 | Synchronization III: Bounded buffer Scribe notes | ||
| F 11/2 | Lab 3 assigned | ||
| Week 6 | M 11/5 | Midterm | Lab 2 due |
| W 11/7 | File systems I: Caching and performance Scribe notes | ||
| Week 7 | M 11/12 | Holiday | |
| W 11/14 | File systems II: File system design Scribe notes | ||
| Week 8 | M 11/19 | Journaling & virtual memory I Scribe notes | |
| W 11/21 | Virtual memory II Scribe notes | Lab 3 due, Lab 4 assigned | |
| F 11/23 | Holiday | ||
| Week 9 | M 11/26 | Distributed systems I Scribe notes | |
| W 11/28 | Distributed systems II Scribe notes | ||
| Week 10 | M 12/3 | Security I Scribe notes | |
| W 12/5 | Security II Scribe notes | ||
| F 12/7 | Lab 4 design problem presentations | ||
| Finals | W 12/12 | Lab 4 due (classwide extension) | |
| F 12/14 | Final, 11:30am-2:30pm |