Section 1: MWF 10:00am 134 TMCB

This graduate course explores advanced topics in operating systems. The course covers a set of classic research papers from a core set of topics in operating systems, mixed with some of the latest research in these areas. You will complete a project to gain some experience implementing operating system features. You will also write a short literature review to demonstrate you have gained a deep understanding of operating systems.

The prerequisite for this course is an undergraduate course in operating sytems, such as CS 345. If you are lacking this preparation, you should read Operating Systems: Three Easy Pieces during the first month of class.

Learning Objectives

At the end of the course, students should be able to:


We will study core research areas over the course of several weeks, reading and discussing several papers together. I expect students to read each paper before class and come to class prepared to give a brief summary and to offer criticisms and/or questions about the paper.

We will set aside time throughout the semester to work on and discuss ongoing class projects.


We will read both classic papers and the latest research in operating systems, including papers from the SigOps Hall of Fame, SOSP, and OSDI. Links to research papers will be available on the class web site. Students are welcome to suggest particular topics or papers they would like to read.


We will read a paper for nearly every day we meet in class. You should read every paper, with the goals of understanding (a) the research problem being solved, (b) how this paper fits into the related work in the area, (c) the contributions this paper makes, and (d) any strengths, weaknesses, or unresolved questions you have. Because we will often read 2 papers a week, your goal should be to read each paper in about 1 and a half hours. Takes notes as you read so that you can write a a short review.


Each student will write a one page review of the paper for the day. The review should be turned in during class, on paper. Your review should have the following format:

Discussion leaders

Students will at times take turns leading discussions on the papers we read. You should still write a review on the day you lead a discussion. When it is your turn, you should create a short presentation, at most 10 minutes long, that summarizes the following points about the paper:

Feel free to copy figures from the paper.

Your main goal is to then coordinate a discussion of the paper. You should start by helping everyone to walk through the methods and results to be sure they understand what the authors did, and review the questions or discussion points people wrote. Finish by going around the room to discuss criticisms and areas of future work identified by the class.

Survey Paper

Each student will write a short survey paper examining a focused area of operating systems that they are interested in. The goal of this paper is to demonstrate your expertise in understanding opreating systems as a research area and to give you additional experience conducting a literature search in a new area and presenting your ideas in writing and as a presentation.


Students will work in small teams to conduct a research project that involves implementing some kind of operating systems functionality. The main goal of the project is to gain hands-on experience, not to conduct a research project. Students will write a report on their project and give a presentation of their project during the last week of class.


Grading will be based on an scale of 0 to 100, with standard letter grades assigned. Your final grade will be computed by weighting the assignments as follows:

Project: 50%

Survey Paper: 30%

Reviews: 10%

Participation in class discussions: 10%

Late Policy

All work must be turned in on time -- turn in partial work if you are not done. Medical or other exceptions must be given prior to the due date.

Educational Policies

Honor Code Standards

In keeping with the principles of the BYU Honor Code, students are expected to be honest in all of their academic work. Academic honesty means, most fundamentally, that any work you present as your own must in fact be your own work and not that of another. Violations of this principle may result in a failing grade in the course and additional disciplinary action by the university.

For this course, some assignments are categorized as group work. For these assignments, you may form a group that works together to produce one solution. Any assignment not categorized as group work must be done individually. You are encouraged to generally discuss problems with other groups or students, but you may never use some other group's or student's solution or code in any way. The use of sources (ideas, quotations, paraphrases) must be properly acknowledged and documented.

Policy on Harassment

Harassment of any kind is inappropriate at BYU. Specifically, BYU's policy against sexual harassment extends not only to employees of the university but to students as well. If you encounter sexual harassment, gender-based discrimination, or other inappropriate behavior, please talk to your professor, contact the Equal Employment Office at 422-5895 or 367-5689, or contact the Honor Code Office at 422-2847.

Policy on Disabilities

BYU is committed to providing reasonable accommodation to qualified persons with disabilities. If you have any disability that may adversely affect your success in this course, please contact the University Accessibility Center at 422-2767. Services deemed appropriate will be coordinated with the student and instructor by that office.