CSE 221: Graduate Operating Systems

Fall 2003

Stefan Savage (savage@cs.ucsd.edu)
AP&M 5220
(858) 822-4895
Teaching Assistant
Sean O'Rourke (sorourke@cs.ucsd.edu)
Tue/Thu 11:00am - 12:20pm
University Center Building 413, Room 1
Office Hours
Stefan Savage: Mon 3:00pm - 4:00pm, Wed 4:00pm - 5:00pm, or by appointment
O'Rourke: By appointment

   Course Objectives

The purpose of this course is to teach computer software system structures from a design point of view. We will look at different structuring techniques, and we will examine their usage in both important historical systems and in modern systems.

In addition to learning about different system structures and different operating systems, you will learn:

  • How to read a research paper in an objective manner.
  • How to write a critical analysis of the research described in a paper.
  • How to articulate your understanding of and insights into a research paper.
  • How to synthesize research themes and topics across multiple papers.
   Reading List

We will be reading and discussing two papers each class period according to the following schedule:

   Class Participation

The structure of this class will include some introductory lecture material, but primarily we will discuss research papers that we will have all read before each class period. I will lead discussions by asking questions of students at random in class. Note that your answers to these questions form an appreciable portion of your overall grade, so it is important that you both show up to class as well as read the papers carefully.

Because of the unusual format of this class, I will not grade you on class participation during the first two weeks of class.

   Paper Evaluations

One goal of the course is to improve your skill at evaluating research papers. Towards this end, I ask that you submit short evaluations of the papers that we will discuss before each class period. Writing the evaluations will be excellent preparation for answering questions in class. You also might find it very helpful to read and discuss the papers with other students in the class before lecture, and I heartily encourage it (your paper evaluations, however, need to be your own).

Your evaluation should address the following question:

  • What problem does the paper address?
  • How is it different from previous work, if any?
  • What is the approach used to solve the problem?
  • How does the paper support or otherwise justify its arguments and conclusions?
  • Was the paper, in your judgement, successful in addressing the problem?

Your evaluation should be concise, with just one to a few sentences per question.

I will also include a question addressing a specific aspect of each paper. Please conclude your evaluation by answering this question. I will ask this question, as well as some of the ones above, as discussion questions during class.

Evaluations for the papers being discussed in class are due by 10pm the day before class. Please use the online Web form to submit your evaluations and view others.


You will work on a group project for the course. More details to follow.


There will be a final exam for the course during the university scheduled exam period.



  • Paper evaluations: 15%
  • Class participation: 25%
  • Project: 30%
  • Final: 30%

   Background Reading (not required)
Operating Systems Concepts by Silberschatz, Galvin and Gagne, Wiley Press.

Operating Systems by Nutt, Addison-Wessley.