Need to be on campus, or use VPN to access some papers. Or, change "dl.acm.org/" to "dl-acm-org.proxy.library.cornell.edu/" in the URL.
Week | Class # | Day | Date | Topic | Reading | Notes | |
---|---|---|---|---|---|---|---|
1 | 1 | Tue | Aug 27 | Administrivia | How to read a paper | ||
2 | Thu | Aug 29 | Classical systems and intro to first programming project | Epidemic algorithms for replicated database maintenance by Alan Demers et al. | Due Aug 29, 7.30am | ||
2 | 3 | Tue | Sep 3 | Building Large, Principled Systems | End-to-end arguments in system design by Jerry H. Saltzer et al. Hints for computer system design by Butler W. Lampson |
Due Sep 3, 7.30am | |
4 | Thu | Sep 5 | Classical Systems | The UNIX time-sharing system by Dennis M. Ritchie et al. The structure of the “THE”-multiprogramming system by Edsger W. Dijkstra |
Due Sep 5, 7.30am | ||
3 | 5 | Tue | Sep 10 | Classic File Systems | Required: The design and implementation of a log-structured file system by Mendel Rosenblum et al. Optional: A fast file system for Unix by William N. Joy et al. |
Due Sep 10, 7.30am | |
6 | Thu | Sep 12 | Concurrency, Threads, and Events | On the duality of operating system structures by Hugh C. Lauer et al. Capriccio: scalable threads for internet services by Rob van Behrn et al. |
Due Sep 12, 7.30am | ||
4 | 7 | Tue | Sep 17 | µ-kernels Simon |
Required: The performance of μ-kernel-based systems by Hermann Härtig et al. Optional: Mach: a foundation for open systems (operating systems) by Richard Rashid et al. |
Due Sep 17, 7.30am | |
8 | Thu | Sep 19 | Extensible Kernels Salman |
Required: Exokernel: an operating system architecture for application-level resource management by Dawson R. Engler et al. Optional: Extensibility, Safety and Performance in the SPIN Operating System by Brian N. Bershad et al. |
Due Sep 19, 7.30am | ||
5 | 9 | Tue | Sep 24 | Virtualization Chuhan |
Required: Xen and the art of virtualization by Paul Barham et al.i Optional: The Origin of the VM/370 Time-Sharing System by R. J. Creasy |
Due Sep 24, 7.30am | |
10 | Thu | Sep 26 | Many Cores Eric |
An Analysis of Linux Scalability to Many Cores by Silas Boyd-Wickizer et al. | Due Sep 26, 7.30am | ||
6 | 11 | Tue | Oct 1 | Xilin | Required: seL4: formal verification of an OS kernel by Gerwin Klein et al. Optional: Shielding Applications from an Untrusted Cloud with Haven by Andrew Baumann et al. |
Due Oct 1, 7.30am | |
12 | Thu | Oct 3 | Gossip Program Evaluation Session | ||||
7 | 13 | Tue | Oct 8 | Ann Mark |
Time, clocks, and the ordering of events in a distributed system by Leslie Lamport Internet time synchronization: the network time protocol by David L. Mills |
Due Oct 8, 7.30am | |
14 | Thu | Oct 10 | Angelica Austin |
Implementing fault-tolerant services using the state machine approach: a tutorial by Fred B. Schneider Chain replication for supporting high throughput and availability by Robbert van Renesse et al. |
Due Oct 10, 7.30am | ||
8 | - | Tue | Oct 15 | Fall Break | |||
15 | Thu | Oct 17 | Keri | Impossibility of distributed consensus with one faulty process by Michael J. Fischer et al. | Due Oct 17, 7.30am | ||
9 | 16 | Tue | Oct 22 | Shuangyu | Required: Paxos Made Simple by Leslie Lamport Optional: In search of an understandable consensus algorithm by Diego Ongaro et al. |
Due Oct 22, 7.30am | |
17 | Thu | Oct 24 | Keting | Required: Practical Byzantine fault tolerance by Miguel Castro et al. Optional: The Byzantine Generals Problem by Lamport et al. |
Due Oct 24, 7.30am | ||
10 | 18 | Tue | Oct 29 | Spencer | Required: Chord: A scalable peer-to-peer lookup service for internet applications by Ion Stoica et al. Optional: The impact of DHT routing geometry on resilience and proximity by Krishna Gummadi et al. |
Due Oct 29, 7.30am | |
19 | Thu | Oct 31 | Yuqi | Dynamo: amazon's highly available key-value store by Gieseppe DeCandia et al. | Due Oct 31, 7.30am | ||
11 | 20 | Tue | Nov 5 | Byungsoo | Required: The Google file system by Sanjay Ghemawat et al. Optional: Spanner: Google’s Globally Distributed Database by James C. Corbett et al. |
Due Nov 5, 7.30am | |
21 | Thu | Nov 7 | Tanmaey Yunxi Shen |
MapReduce: simplified data processing on large clusters by Jeffrey Dean et al. Apache Spark: a unified engine for big data processing by Matei Zaharia et al. |
Due Nov 7, 7.30am | ||
12 | 22 | Tue | Nov 12 | Omar | Occupy the cloud: distributed computing for the 99% by Eric Jonas et al. Serverless computation with openLambda by Scott Hendrickson et al. |
Due Nov 12, 7.30am | |
23 | Thu | Nov 14 | Yimeng | Required: Pregel: a system for large-scale graph processing by Grzegorz Malewicz et al. Optional: TensorFlow: a system for large-scale machine learning by Martin Abadi et al. |
Due Nov 14, 7.30am | ||
13 | 24 | Tue | Nov 19 | Bhaskar | Congestion avoidance and control by Van Jacobson | Due Nov 19, 7.30am | |
25 | Thu | Nov 21 | Chia-Hsiang | Required: Arrakis: The Operating System Is the Control Plane by Simon Peter et al. Optional: OpenFlow: enabling innovation in campus networks by Nick McKeown et al. |
Due Nov 21, 7.30am | ||
14 | 26 | Tue | Nov 26 | Oren | Bitcoin: A Peer-to-Peer Electronic Cash System by Satoshi Nakamoto | Due Nov 26, 7.30am | |
- | Thu | Nov 28 | Thanksgiving Break | ||||
14 | 27 | Tue | Dec 3 | Final student project presentations | TBD | Due Dec 3, 7.30am | |
28 | Thu | Dec 5 | Final student project presentations | TBD | Due Dec 5, 7.30am |