CS240X: Advanced Topics in Operating Systems II

Winter 2007 -- Dawson Engler


NOTE: Due to limited enrollment CS240X has been cancelled.

Class Abstract

This class will cover current research papers in operating systems. Topics include concurrency, virtual memory, file systems, as well as more active areas such as error detection, handling failure, unusual systems, and practical, fast scalability.
CS240X's strucuture mirrors that of CS240 --- extensive, in-class discussion --- but will sacrifice some of 240's balance to favor papers that are interesting but specialized, or more current, or more challenging. It can be taken in lieu of CS240 or in addition to it (either before or after).

Class Times

Tu-Th 1:15PM - 2:30PM in 550-553R

Course Staff

Instructor

Dawson Engler
Office: 314 Gates
Telephone: (650) 723-0762
E-mail: engler@cs.stanford.edu
Office hours: By appointment

Teaching Assistant

Jeremy Sugerman
E-mail: cs240x-win0607-staff@lists.stanford.edu
Office hours: TBD
Location: Gates 376
Extra office hours before exams

Course Secretary

Mirella Machuca
Office: 291 Gates
Phone: (650) 723-5741
E-mail: mirella@cs.stanford.edu

Email

To contact the staff, please send email to cs240x-win0607-staff@lists.stanford.edu and prefix the subject line with "CS240X" for a prompt response. Announcements from the staff will be sent via the cs240x-win0607-students@lists.stanford.edu mailing list to which any registered student will automatically be added.

Prerequisites

The prerequisite for this class is CS 140 or its equivalent. Course discussion may also assume knowledge of papers and topics covered in CS240.

The other requirement is that students be able to send and receive email, access the class newsgroup, access the class web page, and download and print postscript from the class web page. Most of the notes and other materials will be available only on the class web page.

Course Organization and Workload

The course consists of lectures, readings, and exams. The two most important things to know about the class: (1) the main goal is to have interesting in-class discussions and (2) we recommend you read each paper at least 2-3 times, focusing on tricky details (and do so preferably more than a day in advance so that it sinks in).

Most of the work in this course consists of reading journal and conference papers. We will cover one or two papers each class meeting. This class will be primarily discussion based (rather than organized around lectures). Active discussion will (hopefully) give you a non-trivial understanding of the material. The only way this approach can work is if you read the papers carefully. To encourage this, 40% of your class grade will come from class participation: this includes talking in class, as well as how you do on pop quizzes and (possibly) pop presentations. Class time will not be used to rehash the material in the papers. Instead, it will be used to highlight the important points and discuss some of the more interesting features. There will be as much as 10-15 hours of reading per week. Do not take this course unless you are willing and able to do a lot of reading.

Readings

There is no textbook for this course. The course is based on a collection of journal and conference papers that describe the history and state of the art in operating systems. Papers will be discussed in class in approximately the order that they appear on the reading list. You must read the papers before class. At a minimum we recommend two close readings. We will provide most papers online; those that are only available in hardcopy will be provided about a week before they are needed.

Newsgroup

There is a class newsgroup, su.class.cs240x, that can be used by members of the class to converse with each other. All course announcements will be put on to the class web page. The news group is a good place to advertise for study groups, ask questions of other students, etc.

ESS: Connecting to Stanford Newsgroups

Reading List

Category/Date Title Author(s)
TBD