6.824: Distributed Systems

Spring 2009
Tues/Thurs, 11-12:30, 36-153

2007 Web Site
2006 Web Site
2005 Web Site
2004 Web Site
2002 Web Site
2001 Web Site
2000 Web Site


May 21: Quiz 2 solutions and the grade distribution have been posted. We hope you enjoyed taking 6.824. Have a great summer!

May 11: Please fill out a course evaluation for 6.824. This will help us improve future offerings of the class, and your reviews will also be available in the Underground Guide for future students.

April 23: We have extended the Lab 8 deadline to Wednesday, April 29th. Please note that project teams and descriptions are still due on Tuesday, April 28th.

April 21: David's office hours this week are moved from Wednesday 4-5pm to Tuesday 2:30-3:30pm (or by appointment) due to NSDI.

April 17: Instructions for Lab 9 are posted. Feel free to use the 6.824-discuss list to find project partners.

April 16: Lab 8 has been released and is due on April 24. There is no class next week, so you can use the extra time to work on the lab.

April 3: Lab 7 has been released and is due in two weeks. Happy hacking!

March 19: Adam Marcus has been taking very detailed notes on the lectures and has posted them here. We don't make any guarantees about his notes, but we hope you will find them helpful. Please direct any comments, compliments, and expressions of gratitude to Adam.

March 18: Quiz 1 solutions have been posted.

March 17: Lab 6 has been posted for those wishing to get a head start. It is not due until April 3, and we expect that it will take most of you less time than Lab 5.

March 10: We have posted some past quizzes to help you prepare for the quiz next Tuesday.

March 7: Lab 5 has been posted, and is due on March 20. Although you have more time to do this lab than previous labs, this is the first lab that requires substantial design work on your part, so we strongly suggest that you get an early start.

Feb 27: Lab 4 has been posted, and is due in one week. If your feedback from Lab 1 pointed out significant bugs, you may need to fix them to avoid encountering problems in Lab 4, since Lab 4 uses your lock server. Ask the staff if you need help fixing your Lab 1.

Feb 20: Lab 3 has been posted, and is due in one week.

Feb 19: Please make sure you're able to come to the following important events:

  • Quiz 1: Tuesday, 3/17 from 11AM to 12:30PM
  • Demo Day: Thursday, 5/14 from 11AM to 12:30PM
  • Quiz 2: Wednesday, 5/20 from 9AM to 12PM
Let the staff know if you have an unresolvable conflict.

Feb 13: Lab 2 has been posted, and is due Febuary 20th. Thanks to Zev Benjamin, James Hollenbach, Marek Olszewski, and Geoffrey Thomas, for the helpful comments and patches to lab 1, which we have incorporated into the lab2 branch.

Jan 26: 6.824 is being offered Spring 2009. Lectures will be on Tuesdays and Thursdays from 11am-12:30pm in 36-153.

What is 6.824 about?

6.824 is a core 12-unit graduate subject with lectures, programming labs, quizzes, and a small project extending the labs. It will present abstractions and implementation techniques for engineering distributed systems. Topics include multithreading, remote procedure call, client/server designs, peer-to-peer designs, consistency, fault tolerance, and security, as well as several case studies of distributed systems.

Prerequisites: 6.004 and one of 6.033 or 6.828, or equivalent. Substantial programming experience with C/C++ will be helpful for the lab assignments and final project.

If you feel you know enough about systems engineering, an alternative subject to 6.824 is 6.829. 6.829 focuses on the engineering of networks. If you are a graduate student in systems or networking, we recommend you take both classes during your graduate career. 6.829 is offered in the spring.

If you want to learn more about operating systems in particular, you should consider 6.828.

Questions or comments regarding 6.824? Send e-mail to the TA at 6.824-staff@pdos.csail.mit.edu