Date Slides Topic Optional reading and assignments due
1/6/25 [Slides] Welcome None
1/8/25 [Slides] [Source] P: Processes OSTEP: Processes
1/10/25 [Slides] [Source] P: OS Architectures OSTEP: Process APIs
Project 1 out
1/13/25 [Slides] [Source] P: Process APIs OSTEP: Process APIs
1/15/25 [Slides] [Source] A: Address space and translation OSTEP: Address Space, Address translation and OSTEP: Direct Execution
1/17/25 [Slides] T: Concurrency and threads OSTEP: Concurrency and threads
Project 1 due
Project 2 out
1/20/25 No class: Holiday
1/22/25 [Slides] [Source] T: Concurrency and threads OSTEP: Thread API
1/24/25 [Slides] [Source] T: Pthreads OSTEP: Thread API
1/27/25 [Slides] [Source] T: Atomicity OSTEP: Concurrency and threads
1/29/25 [Slides] [Source] T: Synchronization OSTEP: Concurrency and threads
1/31/25 [Slides] [Source] T: Locks OSTEP: Locks
Project 2 due
Project 3 out
2/3/25 [Slides] [Source] T: Monitors & condition variables OSTEP: Locked data structures
2/5/25 [Slides] [Source] T: Monitors & condition variables OSTEP: Condition variables
2/7/25 [Slides] T: Monitors & condition variables OSTEP: Concurrency bugs
2/10/25 [Slides] [Source] T: Classic synchronization problems
2/12/25 [Slides] [Source] T: Classic synchronization problems
2/14/25 Midterm (review during Thursday's discussion)
2/17/25 No class: Holiday
2/19/25 Midterm results Project 3 due
Project 4 out
2/21/25 [Slides] F: File system concepts OSTEP: Files and directories
2/24/25 [Slides] F: Introducing project 4
2/26/25 [Slides] [Source] F: File system implementation OSTEP: File system implementation
2/28/25 [Slides] F: File system implementation OSTEP: File system implementation
3/3/25 [Slides] F: File system implementation OSTEP: Fast file system (FFS)
3/5/25 (Optional) Research talk
3/7/25 (Optional) Hacking in class: Project 4
3/10/25 [Slides] Final review part 1
3/12/25 [Slides] (Optional) Advice and ask Sam anything
3/14/25 [Slides] Final review part 2 Project 4 due