Text: No mandatory text for this class
The lecture notes will be available after each lecture to assist with studying -- please read them as they often contain material that goes beyond just what we covered in lecture! For supplemental reading in particular areas, please consult one of the following texts:
Your final grade for the course will be based on the following weights for the components of the course. The weights of the individual projects will vary slightly by the difficulty of the project:
The midterms will be in-class, closed-book exams. While they may cover all material to that point in the class, their content will emphasize the material covered since the previous exam. The final exam will be a closed-book exam, covering material from the whole semester, with slight emphasis on material covered since the last midterm.
For more information about the project component, see the assignments page.
The homework will combine both textbook-like questions as well as hands-on experimental exercises. There will be three homework assignments.
Because of the importance of understanding both the theoretical and hands-on elements of systems, students must pass all three components of the course (homeworks, exams, and the projects) in order to receive a passing grade for the course. This does not affect the actual letter grade assignment unless one of the components is not completed to a passing standard.
Also available as an ical file that you can subscribe to.
Date | Instructor | Topics | Notes | Readings |
---|---|---|---|---|
Tue 08/24 | dga | Introduction [pdf] [key] |
||
Thu 08/26 | dga | Communication 1, the Internet in a Day, day 1 [pdf] [key] |
||
Tue 08/31 | dga | Communication 2, the Internet in a Day, day 2 [pdf] [key] |
||
Thu 09/02 | dga | Processes, Tasks, Threads, Abstraction [pdf] [key] |
||
Tue 09/07 | dga | Remote Procedure Calls [pdf] [key] |
HW1 released on 9/8, due 9/15 | |
Thu 09/09 | dga | Local consistency - locking, race conditions, etc. |
See also Ted Faber's Dining Philosopher Notes | Kesden concurrency notes |
Tue 09/14 | dga | Mutexes and Condition Variables and Atomic Instructions |
See Remzi's cond vars lecture notes. | |
Thu 09/16 | dga | Distributed Filesystems [pdf] [key] |
||
Tue 09/21 | dga | Distributed Filesystems 2 - AFS, Coda, callbacks [pdf] [key] |
||
Thu 09/23 | dga | Time and Synchronization [pdf] |
||
Tue 09/28 | dga | Distributed Mutual Exclusion [pdf] |
||
Thu 09/30 | dga | Fault Tolerance 1 - Detecting and Correcting Local Faults [pdf] [key] |
||
Tue 10/05 | dga | RAID [pdf] |
Lecture notes. | |
Thu 10/07 | dga | Concurrency Control [pdf] |
||
Tue 10/12 | dga | MIDTERM EXAM |
||
Thu 10/14 | dga | Logging and Crash Recovery [pdf] |
||
Tue 10/19 | dga | Distributed Replication [pdf] [key] |
||
Thu 10/21 | dga | Data-Intensive Computing and MapReduce/Hadoop [pdf] [key] |
For more info, see the MapReduce paper, it's pretty readable. For more, see their follow-on work on incremental processing, percolator [pdf]. | |
Tue 10/26 | dga | Distributed Filesystems for MapReduce / HDFS |
Read the Google Filesystem. Optional GFS follow-up interview. | |
Thu 10/28 | dga | Consistent hashing and name-by-hash |
No notes; see p2p lecture for consistent hashing. | |
Tue 11/02 | dga | Peer-to-Peer [pdf] |
||
Thu 11/04 | dga | DNS and Content Delivery Networks [pdf] |
||
Tue 11/09 | dga | Security in Distributed Systems 1 - The Crypto Building Blocks [pdf] [key] |
||
Thu 11/11 | dga | Security in Distributed Systems 2 - The Systems [pdf] [key] |
See wikipedia entry for needham-schroeder. | |
Tue 11/16 | dga | No Class |
||
Thu 11/18 | dga | Case Study - Anonymous Routing and TOR |
tor paper and one tor presentation. | |
Tue 11/23 | dga | Virtual Machines |
Two sets of slides. slides 1 and slides 2. | |
Thu 11/25 | Thanksgiving Holiday |
|||
Fri 11/26 | Thanksgiving Holiday |
|||
Tue 11/30 | dga | Byzantine Fault Tolerance [pdf] [key] |
||
Thu 12/02 | TAs | Course Review |
||
Fri 12/10 | dga | FINAL EXAM. 1pm - 4pm, Wean Hall 7500. |
Last updated: Wed Dec 01 22:29:04 -0500 2010 [validate xhtml]