CPS 510: Operating Systems, Fall 2020
home calendar topics work resources
Class Meetings
Tu 3:30 - 4:45 Ghost class: no required session except by special announcement; instructors available.
Th 3:30 - 4:45 Activity on Zoom: access through Sakai.
Prerecorded lectures on Panopto
Jeff Chase (chase at cs.duke.edu)
Mike Hewner (hewner at cs.duke.edu)
Danyang Zhuo (danyang at cs.duke.edu)
Piazza: please follow standard etiquette.
Office hours: instructors available during scheduled ghost class Tu 3:30-4:45.

Course announcements

Welcome to CPS 510 for Fall 2020. Here are some things to know:

  • Autograder (AG). We use AG350 to manage teams, repositories, and submission for the labs. See the labs page.
  • Workload. This offering of CPS 510 has weekly projects (labs) for 10 weeks, then an independent project. We also read one paper per week for Thursday discussion. There are weekly quizzes and questions on the readings. But no exams.
  • Two tracks. Course topics are synchronized week-by-week with the introductory OS class CPS 310. The 310 lectures are available to you if you want to refresh your background. We are storing them in common folders/repositories as described below.
  • Curriculum and workload. See the detailed list of topics week-by-week. [PDF]

Every week follows the same plan: the same tasks in the same sequence at the same times every week.

  • Watch the lectures. Lectures are pre-recorded. You can find them in the Panopto folder. There are three lectures per week (a, b, c). For week number N, please watch lectures named Na-510, Nb-510, and Nc-510.
  • Review the lecture materials. You can find all lecture slides and related materials in the course git repository. Clone it! Pull it! Keep it up to date. Lectures are numbered by week, sequence, and course, just like the pre-recorded lectures on Panopto.
  • Do the labs (due Monday). There is a lab for each week, due the Monday of the following week.
  • Ghost class (Tuesday). No required meeting except by special announcement. Instructors available for questions and discussion.
  • Read the paper (by Wednesday). Papers are in the repository, numbered by week.
  • Take the pre-quiz (Wednesday, on Sakai). Pre-discussion quizzes cover the week's lectures and paper.
  • Join the discussion (Thursday). We have a synchronous discussion session on Zoom (links on Sakai) every Thursday at 3:30. The session introduction and wrapup are recorded for students who cannot participate synchronously: access it through Sakai.
  • Take the post-quiz (Friday, on Sakai). Post-discussion quizzes are reflections on the week's reading.

This is an advanced course in operating systems. Topics are synchronized week-by-week with the introductory course (310), so you can review those lectures to refresh your foundations. There are about 90 minutes of pre-recorded lectures per course per week. This advanced course focuses on OS topics beyond the material in the advanced class. We focus on OS technologies for cloud environments, related security topics, OS structure and internals, multiprocessor scaling, and storage/file systems. Key topics include: containers, virtual machines, enclaves, extensible OS, high-performance concurrency, vulnerabilities and exploits, data center I/O, and safe storage. We also explore the nature of "systems" as an evolving discipline encompassing all aspects of bridging the gap between applications and hardware.

More course policies