| Week 1 | Tue 01/30 | Course Intro | 
          Rise of Worse Is Better, Richard Gabriel, Lisp: Good News, Bad News, How to Win Big, 1989How (and How Not) to Write a Good Systems Paper, R. Levin and D. D. Redell, SIGOPS OSR, 1983 Optional: |  | 
    
      |  | Thu 02/01 | Historical Perspective | 
          The Structure of the 'THE'-Multiprogramming System, Edsger Dijkstra, CACM 1968The Nucleus of a Multiprogramming System, Per Brinch Hansen, CACM 1970 |  | 
    
      | Week 2 | Tue 02/06 | Time-Sharing | 
          The UNIX Time-Sharing System, Ritchie and Thompson, CACM 1974The Evolution of the Unix Time-sharing System, Dennis M. Ritchie, Bell Labs Technical Journal, 1984 |  | 
    
      |  | Thu 02/08 | Personal Computing | 
          Pilot: An Operating System for a Personal Computer, D. D. Redell, Y. K. Dalal, T. R. Horsley, H. C. Lauer, W. C. Lynch, P. R. McJones, H. G. Murray, and S. C. Purcell, CACM 1980Plan 9 From Bell Labs, R. Pike, D. Presotto, S. Dorward, B. Flandrena, K. Thompson, H. Trickey, and P. Winterbottom, USENIX Computing Systems, 1995 |  | 
    
      | Week 3 | Tue 02/13 | OS Structure | 
          On μ-Kernel Construction, Jochen Liedtke, SOSP 1995The Performance of μ-Kernel-Based Systems, H. Härtig, M. Hohmuth, J. Liedtke, S. Schönberg, J. Wolter, SOSP 1997 Optional: |  | 
    
      |  | Thu 02/15 | OS Structure | 
          Exokernel: An Operating System Architecture for Application-Level Resource Management, D. R. Engler, M. F. Kaashoek, and J. O'Toole Jr., SOSP 1995 Optional: 
          Application Performance and Flexibility on Exokernel Systems, M. F. Kaashoek, D. R. Engler, G. R. Ganger, H. M. Briceño, R. Hunt, D. Mazières, T. Pinckney, R. Grimm, J. Jannotti, and K. Mackenzie, SOSP 1997 | Project proposal due | 
    
      | Week 4 | Tue 02/20 | OS Structure | 
          Rethinking the Library OS from the Top Down, D. E. Porter, S. Boyd-Wickizer, J. Howell, R. Olinsky, and G. C. Hunt, ASPLOS 2011Singularity: Rethinking the Software Stack, Galen C. Hunt and James R. Larus, ACM SIGOPS OSR, 2007 Optional: |  | 
    
      |  | Thu 02/22 | Virtual Machines | 
          Xen and the Art of Virtualization, P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield, SOSP 2003 Optional: |  | 
    
      | Week 5 | Tue 02/27 | Virtual Machines | 
          Memory Resource Management in VMware ESX Server, Carl A. Waldspurger, OSDI 2002 Optional: |  | 
    
      |  | Thu 03/01 | Lightweight Virtualization | 
          Dune: Safe User-level Access to Privileged CPU Features, A. Belay, A. Bittau, A. Mashtizadeh, D. Terei, D. Mazieres, and C. Kozyrakis, OSDI 2012 Optional: |  | 
    
      | Week 6 | Tue 03/06 | Scheduling | 
          Scheduler Activations: Effective Kernel Support for the User-level Management of Parallelism, T. E. Anderson, B. N. Bershad, E. D. Lazowska, H. M. Levy, SOSP 1991Lottery Scheduling: Flexible Proportional-Share Resource Management, Carl A. Waldspurger and William E. Weihl, OSDI 1994 Optional: |  | 
    
      |  | Thu 03/08 | Synchronization | 
          Monitors: An Operating System Structuring Concept, C. A. R. Hoare, CACM, 1974Experience with Processes and Monitors in Mesa, Butler W. Lampson and David D. Redell, CACM, 1980 Optional: 
          Wait-Free Synchronization, Maurice Herlihy, ACM TOPLAS, 1991Read Copy Update, P. E. McKenney, D. Sarma, A. Arcangeli, A. Kleen, O. Krieger, and R. Russell, OLS 2002 |  | 
    
      | Week 7 | Tue 03/13 | File System | 
          A Fast File System for Unix, M. K. McKusick, W. N. Joy, S. J. Leffler, and R. S. Fabry, ACM TOCS, 1984The Design and Implementation of a Log-Structured File System, Mendel Rosenblum and John K. Ousterhout, SOSP 1991 |  | 
    
      |  | Thu 03/15 | File System | 
          Soft Updates: A Solution to the Metadata Update Problem in File Systems, G. R. Ganger, M. K.McKusick, C. A.N. Soules, and Y. N. Patt., ACM TOCS, 2000The Rio File Cache: Surviving Operating System Crashes, P. M. Chen, W. T. Ng, S. Chandra, C. Aycock, G. Rajamni, and D. Lowell, ASPLOS 1996 Optional: |  | 
    
      | Week 8 | Tue 03/20 | Spring Break |  |  | 
    
      |  | Thu 03/22 | Spring Break |  |  | 
    
      | Week 9 | Tue 03/27 | Multi-core & Scalability | 
          An Analysis of Linux Scalability to Many Cores, S. Boyd-Wickizer, A. T. Clements, Y. Mao, A. Pesterev, M. F. Kaashoek, R. Morris, and N. Zeldovich, OSDI 2010The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors, A. T. Clements, M. F. Kaashoek, N. Zeldovich, R. T. Morris, and E. Kohler, SOSP 2013 | Project checkpoint report due | 
    
      |  | Thu 03/29 | Multi-core & Scalability | 
          The Multikernel: A New OS Architecture for Scalable Multicore Systems, A. Baumann, P. Barham, P. Dagand, T. Harris, R. Isaacs, S. Peter, T. Roscoe, A. Schüpbach, and A. Singhania, SOSP 2009Corey: An Operating System for Many Cores, S. Boyd-Wickizer, H. Chen, R. Chen, Y. Mao, M. F. Kaashoek, R. Morris, A. Pesterev, L. Stein, M. Wu, Y. Dai, Y. Zhang, and Z. Zhang, OSDI 2008 |  | 
    
      | Week 10 | Tue 04/03 | Distribution | 
          The Distributed V Kernel and its Performance for Diskless Workstations, David R. Cheriton and Willy Zwaenepoel, SOSP 1983The Sprite Network Operating System, J. K. Ousterhout, A. R. Cerenson, F. Douglis, M. N. Nelson, and B. B. Welch, IEEE Computer, 1988 Optional: |  | 
    
      |  | Thu 04/05 | Reliability | 
          Bugs as Deviant Behavior: A General Approach to Inferring Errors in Systems Code, D. Engler, D. Y. Chen, S. Hallem, A. Chou, and B. Chelf, SOSP 2001Improving the Reliability of Commodity Operating Systems, M. M. Swift, B. N. Bershad, and H. M. Levy, SOSP 2003 Optional: 
          A Few Billion Lines of Code Later: Using Static Analysis to Find Bugs in the Real World, A. Bessey, K. Block, B. Chelf, A. Chou, B. Fulton, S. Hallem, C. Henri-Gros, A. Kamsky, S. McPeak, and D. Engler, CACM 2010 |  | 
    
      | Week 11 | Tue 04/10 | Formal Verification | 
          seL4: Formal Verification of an OS Kernel, G. Klein, K. Elphinstone, G. Heiser, J. Andronick, D. Cock, P. Derrin, D. Elkaduwe, K. Engelhardt, R. Kolanski, M. Norrish, T. Sewell, H. Tuch, and S. Winwood, SOSP 2009Using Crash Hoare Logic for Certifying the FSCQ File System, H. Chen, D. Ziegler, T. Chajed, A. Chlipala, M. F. Kaashoek, and N. Zeldovich, SOSP 2015 |  | 
    
      |  | Thu 04/12 | Formal Verification | 
          Push-Button Verification of File Systems via Crash Refinement, H. Sigurbjarnarson, J. Bornholt, E. Torlak, and X. Wang, OSDI 2016IronFleet: Proving Practical Distributed Systems Correct, C. Hawblitzel, J. Howell, M. Kapritsos, J. R. Lorch, B. Parno, M. L. Roberts, S. Setty, and B. Zill, SOSP 2015 |  | 
    
      | Week 12 | Tue 04/17 |  |  | Travelling for PC meeting. No class. | 
    
      |  | Thu 04/19 | Security | 
          SCONE: Secure Linux Containers with Intel SGX, S. Arnautov, B. Trach, F. Gregor, T. Knauth, A. Martin, C. Priebe, J. Lind, D. Muthukumaran, D. O'Keeffe, M. L. Stillwell, D. Goltzsche, D. Eyers, R. Kapitza, P. Pietzuch, and C. Fetzer, OSDI 2016Shielding Applications from an Untrusted Cloud with Haven, A. Baumann, M. Peinado, and G. Hunt, OSDI 2014 Optional: |  | 
    
      | Week 13 | Tue 04/24 | Data Center | 
          Arrakis: The Operating System is the Control Plane, S. Peter, J. Li, I. Zhang, D. R. K. Ports, D. Woos, A. Krishnamurthy, T. Anderson, and T. Roscoe, OSDI 2014IX: A Protected Dataplane Operating System for High Throughput and Low Latency, A. Belay, G. Prekas, A. Klimovic, S. Grossman, C. Kozyrakis, and E. Bugnion, OSDI 2014 |  | 
    
      |  | Thu 04/26 | Data Center | 
          The Google File System, S. Ghemawat, H. Gobioff, and S. Leung, SOSP 2003Windows Azure Storage: A Highly Available Cloud Storage Service with Strong Consistenc, Brad Calder et al., SOSP 2011 Optional: |  | 
    
      | Week 14 | Tue 05/01 | Last Lecture: Design Principles
 | 
          End-to-End Arguments in System Design, J. H. Saltzer, D. P. Reed, and D. D. Clark, TOCS 1984The Emperor's Old Clothes, C.A.R. Hoare, CACM 1981Hints for Computer System Design, Butler Lampson, SOSP 1983 |  | 
    
      | Week 15 | Thu 05/10 | Project Presentations | In-class presentations | Project report due |