CSCI-UA.0202-001: Schedule

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

Topics Reading
(to be completed before class)
HW Notes
Week 1
Wed 09/08 Introduction (notes) (whiteboard) HW1 Lab 1 released
Week 2
Mon 09/13 Processes I (notes) (handout) (whiteboard) OSTEP 2 4 HW2
Tue 09/14 RS1 (logistics and registration)

HW 1 DUE, 5:00 PM

Wed 09/15 Processes II (notes) (handout) (whiteboard) OSTEP 5
Fri 09/17

LAB 1 DUE, 7:00 PM

Lab 2 released
Week 3
Mon 09/20 Processes III, Concurrency/synchronization I (notes) (handout) (whiteboard) OSTEP 26 27 HW3
Tue 09/21 HW 2 DUE, 5:00 PM
Wed 09/22 Concurrency/synchronization II (notes) (handout) (whiteboard) OSTEP 28 29 30
Thu 09/23 RS2 (logistics and registration)
Week 4
Mon 09/27 Concurrency/synchronization III (notes) (handout) (whiteboard) OSTEP 31, Appx D (reinforcement of monitors)
Read Coding Standards for Programming with Threads, by Mike Dahlin
HW4
Tue 09/28 HW 3 DUE, 5:00 PM
Wed 09/29 Concurrency/synchronization IV (notes) (whiteboard) OSTEP 32 Lab 3 released
Fri 10/01 LAB 2 DUE, 7:00 PM
Week 5
Mon 10/04 Concurrency/synchronization V (notes) (handout) (whiteboard) HW5
Tue 10/05 HW 4 DUE, 5:00 PM
Wed 10/06 Software safety I: Therac-25 (notes) (handout) (whiteboard) (1) Read the Therac-25 paper, following these tips. If you are off-campus, this link through the NYU libraries Web proxy may be useful.
(2) While you are reading, view these two helpful graphics (requires Flash), which illustrate linear accelerators and problems that they have caused.
(3) Read this New York Times article and at least the first two pages of this one.
Thu 10/07 RS3 (logistics and registration)
Week 6
Mon 10/11 No class
Tue 10/12 Virtual Monday
Scheduling (notes) (whiteboard)
OSTEP 7 8 9
Wed 10/13 Virtual Memory I

HW 5 DUE, 5:00 PM

(notes) (whiteboard)
OSTEP 13 15 18 19
(Some, not all, of this will be review, given CS201.)
HW6
Fri 10/15 LAB 3 DUE, 7:00 PM
Week 7
Mon 10/18 Virtual Memory II (notes) (handout) (whiteboard) OSTEP 20 (skip 20.2)
Tue 10/19 HW 6 DUE, 5:00 PM
Wed 10/20 Virtual Memory III (notes) (whiteboard) OSTEP 21 22 23 HW7 Lab 4 released
Week 8
Mon 10/25 midterm review (notes) (whiteboard)
Wed 10/27 Midterm exam
Week 9
Mon 11/01 Virtual Memory IV, WeensyOS (notes) (handout) (whiteboard) OSTEP 36 HW8
Tue 11/02 HW 7 DUE, 5:00 PM
Wed 11/03 I/O (notes) (whiteboard)
Thu 11/04 RS5 (logistics and registration)
Week 10
Mon 11/08 Context switches, user-level threading (notes) (handout) (whiteboard) HW9
Tue 11/09 HW 8 DUE, 5:00 PM
Wed 11/10 Disks (notes) (handout) (whiteboard) OSTEP 37 39
Week 11
Mon 11/15 File systems I (notes) (whiteboard) OSTEP 40 HW10
Tue 11/16 HW 9 DUE, 5:00 PM
Wed 11/17 File systems II (notes) (whiteboard) OSTEP 41 Lab 5 released
Fri 11/19 LAB 4 DUE, 7:00 PM
Week 12
Mon 11/22 File systems III (notes) (handout) (whiteboard) OSTEP 42 HW11
Tue 11/23 RS6 (logistics and registration)

HW 10 DUE, 5:00 PM

Wed 11/24 Distributed systems (NFS) (notes) (whiteboard) OSTEP 48 49
Thu 11/25 Thanksgiving
Week 13
Mon 11/29 Security I: Stack smashing (notes) (handout) (whiteboard) OSM:SCI 11.5
Optional: Smashing the Stack for Fun and Profit (errata)
Wed 12/01 Security II: Unix (notes) (whiteboard) None
Fri 12/03 LAB 5 DUE, 7:00 PM
Week 14
Mon 12/06 Security III: Trusting trust (notes) (whiteboard) Read Reflections on trusting trust, by Ken Thompson. Note: this classic is only three pages, but the length is deceptive. It may take a few slow and careful readings to really see what Thompson did. Please read it several times before class; a skim will not be useful.
Tue 12/07 HW 11 DUE, 5:00 PM
Wed 12/08 Putting it all together (notes) (whiteboard) None
Thu 12/09 RS7 (logistics and registration)
Week 15
Mon 12/13 Final exam review (notes) (whiteboard) Bring questions; most of the class will be Q&A
Exam period (12/16 – 12/22)
Mon 12/20 final exam, 6:00 – 7:50 PM, GCASL C95