Advanced Operating Systems is a graduate level course on advanced concepts on operating systems and distributed computing. The course covers a wide array of research topics in systems, from historical perspectives to current topics such as peer-to-peer computing and mobile systems. The class consists of two major thrusts: reading and reviewing papers and doing a research project on your own.
Tuesdays and Thursdays 2-3:20pm.
1890 Maple, Room 342.
In compliance with Section 504 of the 1973 Rehabilitation Act and the Americans with Disabilities Act, Northwestern University is committed to providing equal access to all programming. Students with disabilities seeking accommodations are encouraged to contact the office of Services for Students with Disabilities (SSD) at +1 847 467-5530 or email@example.com. SSD is located in the basement of Scott Hall. Additionally, I am available to discuss disability-related needs during office hours or by appointment.
The basic prerequisite is to have taken an undergraduate operating system course (such as CS-343). Please come talk to me if you don't fulfill this requirement.
There are a number of communication channels set up for this class:
Remember to check this regularly
There is no textbook for this course. The course will be structured around readings from conference proceedings and journal articles.
We will be reading about two papers per meeting. Each paper will be presented to the group by a student and then discussed in a round-table manner. To ensure lively discussions, you will be responsible for reading and preparing a short (typed) summary of these papers before each class. The summaries will be due by 11:59PM of the previous day so that the staff has time to read them and bring your comments into next class' discussion.
Each lecture will consist of a formal presentation, and is expected to go into considerable depth by focusing on some aspect of the material and treating it thoroughly. We'll be using slides that will be made available on the course site. Each presentation will normally last between 20 and 25 minutes, followed by a 10 minutes discussion (presenters are required to meet with either me or the TA before class in order to discuss the slides). All students in the class are expected to participate in these discussions.
You will be responsible for reading and preparing a summary of one or two papers before each class. Your final grade will depend on faithfully submitting summaries for each and every paper before we talk about them in class: this is simple to ensure everybody keeps up with the reading.
When reading papers it is normally useful to write down a summary of about a page. Your summary should include at least:
You may find the following brochure useful: Efficient reading of papers in Science and Technology by Michael J. Hanson, 1990, revised 2000 Dylan McNamee.
Research projects are a critical component of this course. Your goal is to design, construct and evaluate an interesting software system. The system should explore the issues, solve problems and exploit techniques from classroom discussions and readings. Projects must be written up in a term paper (due last day of classes) and teams will present their results at the end of the course in a systems class mini-conference. Projects ideas will be suggested by the instructor, but you are encouraged to come up with your own ideas.
This is the schedule of deliverables (this is mainly to ensure steady
There will be one final, open-book exam covering the reading material. A sample exam will be available along with sample solutions.
This is an example final exam from a previous iteration of a similar course (Distributed Systems, Winter 2004). It should give you a sense of the kind of exam you should expect. For example, note that it includes a couple of basic questions, a one-page summary and a more open-ended research/design question (you need to be inside NU CS to access this).