Schedule

Week Date Lecture Slides Readings Assignments
Week 1 08/30 Tue Course Intro Slides Chapter 1, Chapter 2 Lab 0 released
09/01 Thu OS Architectural Support Slides | Annotated Chapter 6
Week 2 09/06 Tue Processes Slides | Annotated
09/08 Thu Threads Slides | Annotated Lab 0 due, Lab 1 released
Week 3 09/13 Tue Scheduling Slides | Annotated
09/15 Thu Synchronization Slides | Annotated Chapter 28, Chapter 29
Week 4 09/20 Tue Semaphores and Monitors Slides | Annotated
09/22 Thu Synchronization Exercises Slides
Week 5 09/27 Tue Project hacking day, no class
09/29 Thu Deadlock Slides Chapter 32
09/30 Fri Lab 1 due, Lab 2 released
Week 6 10/04 Tue Virtual Memory I Slides Chapter 15, Chapter 16, Chapter 18
10/06 Thu Notes on Pintos Virtual Memory Slides
Week 7 10/11 Tue Virtual Memory II Slides Chapter 19, Chapter 20
10/13 Thu Project hacking day, no class
Week 8 10/18 Tue Page Replacement Slides
10/20 Thu Fall break
10/21 Fri Lab 2 due, Lab 3a released
Week 9 10/25 Tue Dynamic Memory Allocation Slides
10/27 Thu Midterm Exam 1
Week 10 11/01 Tue IO & Disks Slides Chapter 36, Chapter 37
11/03 Thu File Systems Slides Chapter 39
Week 11 11/08 Tue File Systems Implementation Slides Chapter 40
11/10 Thu Project hacking day, no class
Week 12 11/15 Tue Unix Fast File System Slides Chapter 41, FFS
11/17 Thu Log Structured FS Slides Chapter 43, LFS
11/18 Fri Lab 3a due
Week 13 11/21 - 11/25 Thanksgiving Break Food, sleep, lots of it
Week 14 11/29 Tue FSCK and Journaling Slides Chapter 42
12/01 Thu Virtual Machines Slides Lab 3b due
Week 15 12/06 Tue Exam Review Slides
12/08 Thu Midterm Exam 2