Text: Distributed Systems Concepts and Design, fourth edition
George Coulouris, Jean Dollimore, Tim Kindberg
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:
This semester we will have recitations for 15-440. Please select one recitation section to attend (the content will be identical). Recitations will cover systems hacking techniques designed to save you time and pain on the projects, will go into more detail about certain topics, and will have review sessions before exams.
If you have taken 15-441, the first four recitations will be covering similar material, so you do not need to attend them.
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/25 | dga | Introduction [key] |
Chapter 1 | |
Wed 08/26 | First week of class, no recitation |
|||
Thu 08/27 | dga | Communication 1, the Internet in a Day, day 1 [pdf] [key] |
Chapter 3 3.1 through 3.3.4 (see bboard post), 3.3.7, 3.4 through 3.4.2, 3.4.6, 3.4.7 | |
Tue 09/01 | dga | Communication 2, the Internet in a Day, day 2 [pdf] [key] |
2.1, 2.2.5, 2.3, 4.1, 4.2 | |
Wed 09/02 | vrv | Recitation Intro: Overview, version control [pdf] |
See Revision Control chapter of systems-se. Also see the online Subversion book. |
|
Thu 09/03 | dga | Processes, Tasks, Threads, Abstraction [pdf] [key] |
Project 1 Stage 0 (svn + Makefile creation) Due | 6.1, 6.2, 6.3, 6.4 (ignore thread sync) |
Tue 09/08 | dga | Remote Procedure Calls [pdf] [key] |
Chapter 5 through 5.3 | |
Wed 09/09 | TA | Modularity and Project 1 Q& A [pdf] |
||
Thu 09/10 | dga | Local consistency - locking, race conditions, etc. |
See also Ted Faber's Dining Philosopher Notes | 13.1, 13.4, Kesden concurrency notes |
Tue 09/15 | dga | Mutexes and Condition Variables and Atomic Instructions |
||
Wed 09/16 | TA | Debugging [pdf] |
Techniques and tools. Files: debug macro . See Debugging chapter of systems-se. |
|
Thu 09/17 | dga | Distributed Filesystems [pdf] [key] |
||
Tue 09/22 | dga | NO CLASS - Gates Opening Ceremonies |
||
Wed 09/23 | TA | Cancelled, replaced with extra office hours. See assn page. |
||
Thu 09/24 | dga | Distributed Filesystems 2 - AFS, Coda, callbacks [pdf] [key] |
||
Tue 09/29 | charlie | Time and Synchronization [pdf] |
Homework 1 due before/in class. Lab 2.1 assigned |
11.1 - 11.4 |
Wed 09/30 | TA | Introduction to Project 2 [pdf] |
||
Thu 10/01 | charlie | Distributed Mutual Exclusion [pdf] |
12.1 - 12.2 | |
Tue 10/06 | dga | Fault Tolerance 1 - Detecting and Correcting Local Faults [pdf] [key] |
||
Wed 10/07 | TA | More on Project 2 [pdf] |
||
Thu 10/08 | dga | RAID |
Lecture notes. Lab 2.1 due, Lab 2.2 assigned | |
Tue 10/13 | charlie | Concurrency Control [pdf] |
||
Wed 10/14 | No recitation (there will be a separate review session) |
(study for the midterm) | ||
Thu 10/15 | dga | MIDTERM EXAM |
||
Tue 10/20 | charlie | Logging and Crash Recovery [pdf] |
||
Wed 10/21 | TA | Midterm post mortem |
||
Thu 10/22 | dga | Distributed Replication [pdf] [key] |
Lab 2.2 due, Lab 2.3 assigned | |
Tue 10/27 | dga | Data-Intensive Computing and MapReduce/Hadoop [pdf] [key] |
For more info, see the MapReduce paper, it's pretty readable. | |
Wed 10/28 | TA | The CAP Theorem [pdf] |
||
Thu 10/29 | dga | Distributed Filesystems for MapReduce / HDFS |
Read the Google Filesystem. Lab 2.3 due, lab 2.4 assigned. Optional GFS follow-up interview. | |
Tue 11/03 | dga | Consistent hashing and name-by-hash |
No notes; see p2p lecture for consistent hashing. | |
Wed 11/04 | TA | Introduction to Hadoop Programming [pdf] |
||
Thu 11/05 | dga | Peer-to-Peer [pdf] |
Lab 2.4 due | |
Tue 11/10 | dga | DNS and Content Delivery Networks [pdf] |
||
Wed 11/11 | TA | No recitation (vrv out of town) |
||
Thu 11/12 | charlie | Security in Distributed Systems 1 - The Crypto Building Blocks [pdf] |
HW2 due, P3 Assigned | |
Tue 11/17 | Max Krohn | Max Krohn guest lecture |
HW3 assigned? | |
Wed 11/18 | TA | Extra Office Hours for Project/HW Questions (GHC6221) |
||
Thu 11/19 | charlie | Security in Distributed Systems 2 - The Systems [pdf] |
||
Tue 11/24 | Thanksgiving Holiday |
|||
Wed 11/25 | Thanksgiving Holiday |
|||
Thu 11/26 | Thanksgiving Holiday |
|||
Tue 12/01 | dga | Case Study - Anonymous Routing and TOR |
tor paper and one tor presentation. | |
Wed 12/02 | TA | Office Hours for Project (GHC6221) (no OH on Monday) |
||
Thu 12/03 | dga | Energy Efficient Computing [pdf] |
P3 due | |
Sat 12/12 | Alex | Final Review, DH 2315, 12pm-2pm |
||
Mon 12/14 | dga | FINAL EXAM. 1pm-4pm. Wean 7500 |
Last updated: Sun Dec 13 10:12:22 -0500 2009 [validate xhtml]