15-712 Syllabus


There are no official texts for the course. If you're not familiar with the background material, you may wish to look at:

You might take a peek at the two CMU undergrad systems courses for background information on operating systems (15-410) and networking (15-441).

Suggested Readings

You may also find the following readings useful:


Your final grade for the course will be based on the following weights:

The project in 15-712 is an open-ended research project, done in groups of three. The project requires a proposal, a project status report, and a final report (both written and presented).


Also available as an ical file that you can subscribe to.

Date Topics Notes Readings
Mon 08/28 Introduction
Wisdom papers KeshavHowToRead, StentHowToRead, LevisHowToRead, Hamming86, Lampson83
Part 1: Concurrency, Threads, Parallelism, Ordering, and Races
Wed 08/30 Implementing remote procedure calls
SigOps HoF paper Saltzer84, Birrell84
Fri 09/01 Datacenter RPCs can be General and Fast
Mon 09/04 Labor Day: No class
Wed 09/06 Using Threads in Interactive Systems: A Case Study
Fri 09/08 Time, Clocks, and the Ordering of Events in a Distributed System
SigOps HoF paper Lamport78
Part 2: Bugs, Bugs, Bugs
Mon 09/11 Eraser: A Dynamic Data Race Detector for Multi-Threaded Programs
SOSP'97 best paper. Bugs as Deviant Behavior (SOSP'01). Savage97
Wed 09/13 IronFleet: Proving Practical Distributed Systems Correct
A discussion in The Morning Paper. Hawblitzel15
Part 3: File Systems and Disks
Fri 09/15 AFS
Leases paper. SigOps HoF papers Howard88
Mon 09/18 The Design and Implementation of a Log-Structured File System
SigOps HoF paper. Rosenblum92
Wed 09/20 A Case for Redundant Arrays of Inexpensive Disks (RAID)
SigOps HoF paper. Fast'07 best paper. Patterson88, Schroeder07
Part 4: Big Data Systems
Fri 09/22 MapReduce and Spark
SigOps HoF paper. NSDI'12 best paper. Dryad. Dean04, Zaharia12
Mon 09/25 No Class - Yom Kippur
Wed 09/27 TensorFlow: Large-Scale Machine Learning on Heterogeneous Distributed Systems
Fri 09/29 Dynamo: Amazon's Highly Available Key-value Store
Mon 10/02 Paxos
Wikipedia Paxos article. Lamport's original Greek parable Lamport's comments on original paper.. Lamport01
Wed 10/04 The Design and Implementation of a Log-Structured File System REDO
SigOps HoF paper. Rosenblum92
Part 5: Kernels and Parallelism
Fri 10/06 Project Discussions With Staff
Mon 10/09 OS Architecture and Extensibility: SPIN and the Exokernel
SOSP'97 paper. SigOps HoF paper. Original Exokernel paper Multikernel (SOSP'09). Bershad95, Kaashoek97
Wed 10/11 Midterm Review
Fri 10/13 Midterm 1
Mon 10/16 No class - Fall Break
Wed 10/18 No class - Fall Break
Fri 10/20 No class - Fall Break
Mon 10/23 Project Discussions with Staff
Wed 10/25 The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors
SOSP'13 best paper Clements13
Fri 10/27 No class
Part 6: Transactions and Databases
Mon 10/30 On Optimistic Methods for Concurrency Control
SigOps HoF paper. Spectulative Execution in a Distributed File System Efficient Locking for Concurrent Operations on B-Trees Kung81
Wed 11/01 Project Meetings (all day)
Fri 11/03 No class
Mon 11/06 Concurrency Control and Recovery
Bernstein's concurrency notes - MVCC, Coordination Avoidance Franklin97
Wed 11/08 No class
Fri 11/10 No class
Part 7: Generalized Fault Tolerance and Security
Mon 11/13 The Byzantine Generals Problem
Lamport's comments on the Byzantine Generals paper. Practical Byzantine Fault Tolerance OSDI'99. Lamport82
Wed 11/15 No class
Fri 11/17 Reflections on Trusting Trust, Why Cryptosystems Fail, Crisis and Aftermath
SigOps HoF paper. Write Summary only for Anderson94. Thompson84, Anderson94, Spafford89
Mon 11/20 No class - Thanksgiving Early Break
Wed 11/22 No class - Thanksgiving Break
Fri 11/24 No class - Thanksgiving Break
Mon 11/27 Highlights from the SOSP15 History Day Talks
SOSP15 History Day.
Wed 11/29 Midterm 2
Fri 12/01 No class. We grade, you project.
Mon 12/04 TBD
Wed 12/06 TBD
Mon 12/11 Project Presentations (tenative date)
Tue 12/12 Project Presentations (tenative date)
Final report due before midnight tonight

Last updated: 2023-10-09 09:29:19 -0400 [validate xhtml]