CS 854 Advanced Topics in Operating Systems

Course Info

  • Instructor: Ali Mashtizadeh
  • Discussion: Piazza
  • Email: mashti AT uwaterloo DOT ca (start subject line with CS854)
  • Lecture: Tuesday/Thursday 1:00PM-2:20PM
  • Office Hours: DC 3602, TTh 2:20PM-3:00PM and MW 11:00-12:00PM

Grading (subject to change)

  • 25% Class Participation
  • 25% Paper Summaries/Presentations
  • 50% Project

Class Participation

Everyone is expected to read every paper and be prepared to discuss them in class.

Course Overview

The course will give students a good background in seminal papers on operating system design issues. We will cover many topics including multi-core, synchronization, security, storage and file systems, virtual machines, and language-driven design. The group project will provide students with the opportunity to work on a small project in the area and conduct further investigation and problem solving on their own.


  • Undergraduate level understanding of operating systems.
  • Programming in C
  • Familiarity with UNIX derivatives is recommended.

Course Readings and Presentations

A one page response to each paper is due in class or by email before the start of class. See the reading list page.

Students will present (most likely 2) papers from the reading list and lead the class discussion. You should cover the background material including the basic design, implementation, and evaluation of the system. A great presentation should lead directly to a discussion around the paper's design decisions, assumptions, and results. Students who present a third paper will have their lowest presentation grade dropped.

Course Project

  • Individual or group projects of 2 or 3 people are allowed.
  • Project paper will be due the last day of class.
  • Each group should present and demo their project.
  • Each group will need to submit a project proposal for approval

Academic Integrity

Students are generally not permitted to submit the same work for credit in multiple classes, e.g., do not present the same paper in multiple seminars.

Students are expected to follow the university policies.

Students with Disabilities

The Office for Persons with Disabilities (OPD), located in Needles Hall, Room 1132, collaborates with all academic departments to arrange appropriate accommodations for students with disabilities without compromising the academic integrity of the curriculum. If you require academic accommodations to lessen the impact of your disability, please register with the OPD at the beginnieach academic term.


This reading list will be in-flux, but we will start with next weeks papers.

Week Tuesday Thursday
9/4—9/8 Intro
9/11—9/15 Eraser Mesa Extra: Pilot
9/18—9/22 Scheduler Activations Appel and Li
9/25—9/29 Superpages Resource Management in ESX
10/2—10/6 Comparison of Hardware and Software Virtualization Techniques Fast File System
10/9—10/13 Holiday LFS
10/16—10/20 Soft Updates Extra: Journaled Soft Updates Autoraid
10/23—10/27 WAFL and ZFS Capsicum
10/30—11/3 Venti Singularity
11/6—11/10 Multics the first Seven Years The Evolution of the Unix Time-sharing System
11/13—11/17 Plan 9 from Bell Labs Both: RC Shell Es Shell
11/20—11/24 Livelock Design and Evolution of the EROS Single-Level Store
11/27—12/1 Everything You Always Wanted to Know About Synchronization but Were Afraid to Ask Presentations


Week Tuesday Thursday
9/4—9/8 PPTX PDF
9/11—9/15 Student Presentation
11/27—12/1 Presentations Presentations


See Piazza posts.