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
Mon 01/24 Introduction (notes) (whiteboard) Lab 1 released
Wed 01/26 Processes I (notes) (handout) (whiteboard) OSTEP 2 4 Whiteboard is corrected (original)
Thu 01/27 RS1 (logistics and registration) (notes) (whiteboard)
Week 2
Mon 01/31 Processes II (notes) (handout) (whiteboard) OSTEP 5
Tue 02/01 HW 1 DUE, 5:00 PM
Wed 02/02 Processes III, Concurrency/synchronization I (notes) (handout) (whiteboard) OSTEP 26 27 Lab 2 released
Fri 02/04 LAB 1 DUE, 7:00 PM
Week 3
Mon 02/07 Concurrency/synchronization II (notes) (handout) (whiteboard) OSTEP 28 29 30
Tue 02/08 HW 2 DUE, 5:00 PM
Wed 02/09 Concurrency/synchronization III (notes) (handout) (whiteboard) OSTEP 31, Appx D (reinforcement of monitors)
Thu 02/10 RS2 (logistics and registration) (notes) (whiteboard)
Week 4
Mon 02/14 Concurrency/synchronization IV (notes) (handout) (whiteboard) OSTEP 32
Tue 02/15 HW 3 DUE, 5:00 PM
Wed 02/16 Concurrency/synchronization V (notes) (whiteboard) Read Coding Standards for Programming with Threads, by Mike Dahlin
Bring questions about concurrency or the course generally
Lab 3 released
Fri 02/18 LAB 2 DUE, 7:00 PM
Week 5
Mon 02/21 No class (Presidents' Day)
Tue 02/22 HW 4 DUE, 5:00 PM
Wed 02/23 Software safety I: Therac-25 (notes) (handout) (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) Read this New York Times article and at least the first two pages of this one.
Thu 02/24 RS3 (logistics and registration) (notes) (whiteboard)
Week 6
Mon 02/28 Scheduling (notes) (whiteboard) OSTEP 7 8 9
Tue 03/01 HW 5 DUE, 5:00 PM
Wed 03/02 Virtual Memory I (notes) (whiteboard) OSTEP 13 15 18 19
(Some, not all, of this will be review, given CS201.)
Fri 03/04 LAB 3 DUE, 7:00 PM
Week 7
Mon 03/07 midterm review (notes) (whiteboard) Bring questions; most of the class will be Q&A Lab 4 released
Wed 03/09 Midterm exam
Spring break
Mon 03/14 No class
Wed 03/16 No class
Week 8
Mon 03/21 Virtual Memory II (notes) (handout) (whiteboard) OSTEP 20 (skip 20.2)
Tue 03/22 HW 6 DUE, 5:00 PM
Wed 03/23 Virtual Memory III, WeensyOS (notes) (whiteboard) OSTEP 21 22 23
Week 9
Mon 03/28 Virtual Memory IV (notes) (whiteboard)
Tue 03/29 HW 7 DUE, 5:00 PM
Wed 03/30 I/O (notes) (handout) (whiteboard) OSTEP 36
Thu 03/31 RS4 (logistics and registration) (notes) (whiteboard)
Week 10
Mon 04/04 Context switches, user-level threading (notes) (handout) (whiteboard)
Tue 04/05 HW 8 DUE, 5:00 PM
Wed 04/06 Disks (notes) (whiteboard) OSTEP 37 39 Lab 5 released
Fri 04/08 LAB 4 DUE, 7:00 PM
Week 11
Mon 04/11 File systems I (notes) (whiteboard) OSTEP 40
Tue 04/12 HW 9 DUE, 5:00 PM
Wed 04/13 File systems II (notes) (whiteboard) OSTEP 41
Thu 04/14 RS5 (logistics and registration) (notes) (whiteboard)
Week 12
Mon 04/18 File systems III (notes) (handout) (whiteboard) OSTEP 42
Tue 04/19 HW 10 DUE, 5:00 PM
Wed 04/20 Distributed systems (NFS) (notes) (whiteboard) OSTEP 48 49
Week 13
Mon 04/25 Security I: Stack smashing (notes) (handout) (whiteboard) OSM:SCI 11.5
Optional: Smashing the Stack for Fun and Profit (errata)
Tue 04/26 HW 11 DUE, 5:00 PM
Wed 04/27 Security II: Unix (notes) (whiteboard) None
Fri 04/29 LAB 5 DUE, 7:00 PM
Week 14
Mon 05/02 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 05/03 HW 12 DUE, 5:00 PM
Wed 05/04 Putting it all together (notes) (whiteboard) None
Week 15
Mon 05/09 Final exam review (notes) (whiteboard) Bring questions; most of the class will be Q&A
Exam period (5/11 – 5/17)
Wed 05/11 final exam, 4:00 – 5:50 PM, Silv 408