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)
Practice Questions Notes
Week 1
Wed 01/22 Introduction (notes) (whiteboard) HW1, Soln Lab 0 and Lab 1 released
Week 2
Mon 01/27 Processes I

LAB 0 DUE, 11:59 PM

(notes) (handout) (whiteboard)

OSTEP 2 4 HW2, Soln
Tue 01/28 RS1: Lab 1 and setup (logistics and registration)

Complete HW1

(notes)
Wed 01/29 Processes II (notes) (whiteboard) OSTEP 5 Lab 2 released
Fri 01/31 LAB 1 DUE, 11:59 PM
Week 3
Mon 02/03 Concurrency/synchronization I (notes) (handout) (handout) (whiteboard) OSTEP 26 27 HW3, Soln
Tue 02/04 Complete HW2
Wed 02/05 Concurrency/synchronization II (notes) (handout) (whiteboard) OSTEP 28 29 30
Thu 02/06 RS2 (lab 2) (logistics and registration) (notes)
Week 4
Mon 02/10 Concurrency/synchronization III (notes) (handout) (whiteboard) OSTEP 31, Appx D (reinforcement of monitors) HW4, Soln
Tue 02/11 Complete HW3
Wed 02/12 Concurrency/synchronization IV (notes) (handout) (whiteboard) OSTEP 32 Lab 3 released
Thu 02/13 RS3 (lab 2,3) (logistics and registration) (notes)
Fri 02/14 LAB 2 DUE, 11:59 PM
Week 5
Mon 02/17 No class (Presidents' Day)
Tue 02/18 Complete HW4 HW5, Soln
Wed 02/19 Concurrency/synchronization V (notes) (handout) (whiteboard) Read Coding Standards for Programming with Threads, by Mike Dahlin
Bring questions about concurrency or the course generally
Thu 02/20 RS4: Lab 3 (logistics and registration) (notes)
Week 6
Mon 02/24 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.
HW6, Soln
Tue 02/25 Complete HW5
Wed 02/26 Scheduling (notes) (whiteboard) OSTEP 7 8 9 Lab 4 released
Fri 02/28 LAB 3 DUE, 11:59 PM
Week 7
Mon 03/03 Virtual Memory I (notes) (whiteboard) OSTEP 13 15 18 19
(Some, not all, of this will be review, given CS201.)
Tue 03/04 RS5: Lab 4 (logistics and registration) (notes)
Wed 03/05 Virtual Memory II (notes) (handout) (whiteboard) OSTEP 20 (skip 20.2)
Fri 03/07 Complete HW6
Week 8
Mon 03/10 midterm review (notes) Bring questions; most of the class will be Q&A HW7, Soln
Wed 03/12 Midterm exam
Week 9
Mon 03/17 Virtual Memory III (notes) (whiteboard) OSTEP 21 22 23 HW8, Soln
Tue 03/18 Complete HW7
Wed 03/19 Virtual Memory IV, WeensyOS (notes) (handout) (whiteboard)
Thu 03/20 RS6: Lab 4 (logistics and registration) (notes)
Spring break
Mon 03/24 No class
Wed 03/26 No class
Week 10
Mon 03/31 I/O (notes) (handout) (whiteboard) OSTEP 36 HW9, Soln
Tue 04/01 Complete HW8
Wed 04/02 Context switches, user-level threading (notes) (handout) (whiteboard) Lab 5 released
Thu 04/03 Disks (3:30 - 4:45 PM, signup) (notes) (whiteboard) OSTEP 37 39
Fri 04/04 LAB 4 DUE, 11:59 PM
Week 11
Mon 04/07 File systems I (notes) (whiteboard) OSTEP 40 HW10, Soln
Tue 04/08 Complete HW9
Wed 04/09 File systems II (notes) (whiteboard) OSTEP 41
Thu 04/10 RS7: Lab 5 (logistics and registration) (notes)
Week 12
Mon 04/14 File systems III (notes) (handout) (whiteboard) OSTEP 42 HW11, Soln
Tue 04/15 Complete HW10
Wed 04/16 How debuggers work (notes) (handout) (whiteboard) None Demo of ptrace() functionality
Week 13
Mon 04/21 Security I: Stack smashing (notes) (handout) (whiteboard) OSM:SCI 11.5
Optional: Smashing the Stack for Fun and Profit (errata)
HW12, Soln
Tue 04/22 Complete HW11
Wed 04/23 Security II: Unix (notes) (whiteboard) None
Fri 04/25 LAB 5 DUE, 11:59 PM
Week 14
Mon 04/28 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 04/29 Complete HW12
Wed 04/30 Putting it all together (notes) (whiteboard) None
Week 15
Mon 05/05 Final exam review Bring questions; most of the class will be Q&A
Exam period (5/08 – 5/14)
Mon 05/12 final exam, 4:00 – 5:50 PM