CSCI-GA.3250: Schedule

Below is a TENTATIVE schedule. It can and will change as the weeks go on. You are welcome to read ahead, but doing so is speculative execution.

Topics Reading
(to be completed before class)
Notes
Week 1
Tue 09/02 Introduction
Thu 09/04 Unix read The UNIX Time-Sharing System and
The Evolution of the Unix Time-Sharing System.
Lab 1 released
Week 2
Tue 09/09 Virtual memory I chapters 5 and 6 in 80386 Lab 2 released
Thu 09/11 Virtual memory II read Virtual Memory Primitives for User Programs, Proc. ASPLOS 1991
Fri 09/12 Lab 1 due, 11:59 PM
Week 3
Tue 09/16 Virtualization I read A comparison of software and hardware techniques for x86 virtualization, Proc. ASPLOS 2006 and
skim Disco: Running Commodity Operating Systems on Scalable Multiprocessors, Proc. SOSP 1997
Wed 09/17 Lab 2a due, 11:59 PM Lab 3 released
Thu 09/18 Virtualization II See Tuesday's reading. We will discuss Tuesday's reading in class.
Advice on how to read a paper.
Week 4
Tue 09/23 Virtualization III read Virtual Memory Management in VMware ESX Server, Proc. OSDI 2002
Thu 09/25 Class canceled
Fri 09/26 Lab 2b due, 11:59 PM
Week 5
Tue 09/30 Kernel design I read Improving IPC by kernel design, Proc. SOSP 1993
Thu 10/02 Kernel design II read Exokernel: An Operating System Architecture for Application-Level Resource Management, Proc. SOSP 1995 Lab 4 released
Fri 10/03 Lab 3a due, 9:00 PM
Week 6
Tue 10/07 Kernel design III Skim this paper, and read Section 4 in depth:
Application Performance and Flexibility on Exokernel Systems, Proc. SOSP 1997
Thu 10/09 Concurrency/multicore I read Threads Cannot Be Implemented As a Library, Proc. PLDI 2005
background (not assigned): Memory Barriers: A Hardware View for Software Hackers, 2010
Fri 10/10 Lab 3b due, 9:00 PM
Week 7
Tue 10/14 No class (Fall Recess)
Thu 10/16 Concurrency/multicore II read Read-Copy Update, Proc. Ottowa Linux Symposium 2001
read Abstraction, Reality Checks, and RCU, a talk by Paul E. McKenney at U. of Toronto Cider Seminar, 2005
skim Resizable, Scalable, Concurrent Hash Tables via Relativistic Programming, Proc. Usenix ATC 2011
Fri 10/17 Kernel design IV (make-up class 3:00-4:30 PM 719 Broadway, Room 1221)
Lab 4a due, 9:00 PM
read The Turtles Project: Design and Implementation of Nested Virtualization, Proc. OSDI 2010
Week 8
Mon 10/20 Lab 5 released
Tue 10/21 Concurrency/multicore III read The scalable commutativity rule: designing scalable software for multicore processors, Proc. SOSP 2013
Thu 10/23 Concurrency/multicore IV read Efficient System-Enforced Deterministic Parallelism, Proc. OSDI 2010
Fri 10/24 Lab 4b due, 9:00 PM
Week 9
Tue 10/28 Kernel design IV read FlexSC: Flexible System Call Scheduling with Exception-Less System Calls, Proc. OSDI 2010
Thu 10/30 Sandboxing I read Efficient Software-Based Fault Isolation, Proc. SOSP 1993 Lab 6 released
Fri 10/31 Lab 4c due, 9:00 PM
Week 10
Tue 11/04 Sandboxing II None. Please come prepared to discuss the SFI paper, assigned for Thursday. Lab 7 released
Thu 11/06 Sandboxing III read Dune: Safe User-level Access to Privileged CPU Features, Proc. OSDI 2012
Fri 11/07 Lab 5 due, 9:00 PM
Week 11
Tue 11/11 Security I read The Confused Deputy and
read The KeyKOS Nanokernel Architecture, Proc. Workshop on Micro-kernels and Other Kernel Architectures 1992
Thu 11/13 No class
Fri 11/14 Lab 6a due, 9:00 PM
Week 12
Mon 11/17 Email lab 7 proposal and project teams by 3:00 PM
Tue 11/18 Security II read Capsicum: practical capabilities for UNIX, Proc. Usenix Security 2010
Thu 11/20 Security III read Static checking of dynamically-varying security policies, Proc. OSDI 2010
Fri 11/21 Lab 6b due, 9:00 PM
Week 13
Tue 11/25 I/O handling I Read Eliminating Receive Livelock in an Interrupt-driven Kernel, Proc. Usenix Technical 1996
Thu 11/27 No class (Thanksgiving Recess)
Week 14
Tue 12/02 I/O handling II Read Arrakis: The Operating System is the Control Plane, Proc. OSDI 2014
Thu 12/04 Whole systems I Read Easy Freshness with Pequod Cache Joins, Proc. NSDI 2014
Week 15
Tue 12/09 Whole systems II Read Flat Datacenter Storage, Proc. OSDI 2012
Thu 12/11 Last class read Hints for Computer System Design, ACM Operating Systems Rev. 15, 5 (Oct. 1983)
skim End-to-end Arguments in Systems Design, ACM TOCS, 1984
Fri 12/12 Lab 7 (final project) code due, 9:00 PM
Exam week
Thu 12/18 Final exam, 2:00 PM--5:00 PM, CIWW 412

Last updated: Tue Dec 09 20:43:33 -0500 2014 [validate xhtml]