CS170: Operating Systems (undergrad)

This schedule is tentative. It may change as the weeks go on.

Date Topics Recommended reading Notes
Week 1
Mon 1/9 Introduction OSTEP 2
Wed 1/11 Processes; call stacks; syscall OSTEP 4 5 6
Sun 1/15 HW 1 due at 9:00 PM
Week 2
Mon 1/16 No lecture (MLK Jr. Day)
Wed 1/18 Syscalls; shell; fork/exec OSTEP 26 27
Sun 1/22 Lab 1 and HW 2 due at 9:00 PM
Week 3
Mon 1/23 Concurrency/synchronization I OSTEP 28 29
Wed 1/25 Concurrency/synchronization II OSTEP 28 29
Week 4
Mon 1/30 Concurrency/synchronization III OSTEP 30
Wed 2/1 Concurrency/synchronization IV OSTEP 30
Sun 2/5 Lab 2 and HW 3 both due, 9:00 PM
Week 5
Mon 2/6 Concurrency/synchronization V OSTEP 32 33
Wed 2/8 Scheduling OSTEP 7 8 9
Week 6
Mon 2/13 Midterm
Wed 2/15 Virtual memory I (intro, segmentation) OSTEP 13 14 15 16
Sun 2/19 Lab 3 due, 9:00 PM
Week 7
Mon 2/20 No lecture (Presidents' Day)
Wed 2/22 Virtual memory II (paging) OSTEP 18 19 20
Week 8
Mon 2/27 Virtual memory III (page faults) OSTEP 21 22 23
Wed 3/1 Virtual memory IV (page replacement, thrashing) OSTEP 21 22 23
Sun 3/5 Lab 4 and HW 4 due, 9:00 PM
Week 9
Mon 3/6 File Systems I OSTEP 38 39
Wed 3/8 File Systems II OSTEP 40 41
Week 10
Mon 3/13 Software safety–Therac 25 (1) Read the Therac-25 paper, following these tips.
(2) While you are reading, view these two helpful graphics, which nicely illustrate linear accelerators and problems that they have caused. (Click on original screenshot if you reach the archived pages.)
(3) Read this New York Times article and at least the first two pages of this one (make sure to see the pictures).
Sun 3/19 Lab 5 and HW 5 due, 9:00 PM