Operating System Trade-Offs: Performance, Extensibility, and Security

COS598A

Syllabus

Instructor: Amit Levy
Email: aalevy@cs.princeton.edu
Office Hours: By appointment
Location: Zoom (requires Princeton login to access)

Systems need to balance how much extensibility, safety, and performance they provide applications. This is one of the fundamental trade-offs in system design. The goal of this seminar is to make you a better systems builder, paper reader, and systems researcher, by identifying this trade-off in various settings and thinking of ways to subsume it.

Deliverables

There is neither a midterm nor a final exam for this course. Instead, grades are based on participation in class discussions, reading annotations, and

Each week we will read 2-4 papers from the systems literature. Many of these papers are dense with information. Understanding them in depth requires reading actively.

To facilitate engagement, you are required to make 5 substantive annotations on each paper using Perusall by noon the day before class (you’ll still be able to respond to each other after the deadline). An annotation can be a question, summary, or insight. You’ll be able to see, and comment on, other students’ annotations. Please do so (though you are not required to comment in excess of your annotations)!

In addition, each student (or in groups) must submit a final report and give a final presentation. You have a choice of either:

The final report should be an appropriate length to showcase your work succinctly. Most reports should probably be 4-6 pages, excluding references, in USENIX conference style.

Grading