The following is the tentative reading schedule. Please wait to read each paper until details have been announced in class; I may either switch papers (unlikely) or give suggestions on which parts of the paper you should focus or skim (likely). The full citation information for each paper is available from this page.

This page also contains the question handout given in lecture as well as any notes we created (N).

09/02 Labor Day - No class 09/04 Intro: No Reading 09/06 THE, Nucleus, Unix
09/09 Free 09/11 Disks, FFS 09/13 Free
9/16 Free 09/18 VAX VMS (N), Mach (N) 09/20 Disco (N)
09/23 Free 09/25 Nooks (N) 09/27 Hydra (N), Exokernel (N) Warm-up Project Due
09/30 Files Not Files 10/2 LFS (N) 10/4 IRON
10/7 ZFS (1, 2, 3) 10/9 OptFS 10/11 Free Ousterhout Talk: 10/10, Initial Meetings
10/14 RAID, AutoRAID 10/16 Review 10/18 Exam 1 Pick Proposal: 10/16
10/21 Multics, Superpages 10/23 VMware ESX 10/25 Free Proposal Due: 10/21
10/28 Free 10/30 Monitors and Mesa 11/01 Eraser, SchedAct
11/04 Free 11/06 Lottery, Containers 11/08 DSS Related Due: 11/4 and Progress Meetings
11/11 NFS, AFS (S) 11/13 MapReduce, GFS 11/15 Free
11/18 Free 11/20 CFS 11/22 Scale (Analysis, Commute) Final Meetings
11/25 Free 11/27 Free 11/29 Thanksgiving
12/02 Opt-Safe 12/04 Review 12/06 Exam II
12/09 Student Presentations 12/11 Student Presentations 12/13 Student Presentations
12/16 Final Report Due

This course is divided into several parts. We'll begin with a quick overview of basic material to ensure you have some background in most areas of systems. We'll then cover in more detail: operating system structure, stable storage, memory management, process synchronization and scheduling, and distributed systems.

Within each category, we'll read the historic papers that led to many of the fundamental operating system concepts you learned about in your undergraduate OS courses. We'll also focus on influential papers that proposed significant and innovative ideas that have shaped OS research. Finally, we will conclude each category with some of the more recent papers that perhaps look to the future and point the way.

The reading schedule for this course will be intense. You will have three basic responsibilities for the readings covered in the course:

1 - Read the assigned papers before class. Without doing so, discussion is not as interesting!

2 - Form a discussion group. You should have three or four people in your group, and discuss each paper sometime before class meets. It is up to you if you want to meet just once a week or twice a week before each class, but you should discuss each paper. When you have formed a group, please send me email with a list of group members. When discussing each paper, you are encouraged to consider the following questions:

  1. What problem are the authors trying to solve?
    • Why was the problem important?
    • Why was the problem not solved by earlier work?
  2. What is the authors solution to the problem?
    • How does their approach solve the problem?
    • How is the solution unique and innovative?
    • What are the details of their solution?
  3. How do the authors evaluate their solution?
    • What specific questions do they answer?
    • What simplifying assumptions do they make?
    • What is their methodology?
    • What are the strengths and weaknesses of their solution?
    • What is left unknown?
  4. What do you think?
    • Is the problem still important?
    • Did the authors solve the stated problem?
    • Did the authors adequately demonstrate that they solved the problem?
  5. What future work does this research point to?

3 - Write-up each paper (or set of papers per lecture). Your write-up for each lecture should consist of a very short essay-style answer. The list of questions to answer can be found here. Turn in your write-up via email by sending them to the instructor before 11 a.m. on the day of the class where we discuss the paper, with the due date in the subject line (e.g., 01/25). Late write-ups will automatically receive a null score. Write-ups must be in plain text. More hints on a good write-up include:

  • Answer the specific question that has been posted.
  • Do not write more than two paragraphs.
  • Do not quote large parts directly from the paper.
  • Use your own words and thoughts.


Fall 2013
Time: MWF 1:00-2:15
Room: 119 Noland

Prof Andrea Arpaci-Dusseau

Office Hours
Tuesday 10:00-11:00
Friday 2:30-3:30
7375 Computer Sciences
Email: dusseau "at"

  • CS736 Home
  • Lecture Schedule
  • Paper List
  • Reading Questions
  • Grading
  • Projects
  • Exams
  • Outreach Opportunity
  • UW Computer Sciences Dept