| Stanford University Computer Science 244b: Spring 2008 Distributed Systems |
Announcements | Overview | Details | Materials | Assignments | Exams | Policies
May 16: Project 2 (replFs) question session: Friday May 16th, 3:15pm-4:05pm, Gates B03
(slides)
May 9: Project 2 (replFs) intro session: Friday May 9th, 3:15pm-4:05pm, Gates B03
(slides)
April 4: Project 1 info session: Friday April 4th, 3:15pm-4:05pm, Gates B03
This course explores the issues to address in designing and implementing distributed systems with a particular emphasis on how to deal with the shared state between separate processes within such a system. Topics include: distributed shared memory, object-oriented structuring of distributed systems, real/logical/virtual time, directories and naming, distributed file systems, authentication and security, distributed process scheduling, presentation protocols and communication support for distributed systems. The material complements network-layer courses by building on the transport layer to provide higher-level applications and services.
There is expected to be several guest lectures that depart from this pattern and will be noted as they arise.
The chapters also list research papers as references, meaning they are optional reading and not required in any way to so well in the course. Students should be able to access these papers online using Stanford's site license for the ACM digital library from any computer with a Stanford IP address. If you have difficulties accessing the papers online, please contact the TA.
Assignment #1 - Mazewar
Assignment #2 - Distributed Replicated Files
Of course you are permitted and encouraged to discuss design strategies with one another, but there should be no sharing of code or header files, and all assistance (other than from the TA or instructor) must be cited. See this link for more detailed explanation of what is permitted and what is not.
You may work on the assignments on any Unix machine with a modern C/C++ compiler and debugger. But since we will evaluate your assignment on one of the Linux machines in the Terman Engineering Computer Cluster we strongly recommend that you develop and test your code on one of these machines.
You may find the Unix command ssh -X pod.stanford.edu to be useful at your Linux or OS X prompt.
Exams are closed book, closed notes. The final is normally 45 percent of the grade, midterm 15 percent and assignments the remaining 40 percent.
Off-campus students are encouraged to come onto campus for the exams if at all feasible. If necessary, remote SITN/SCPD students may take the exams at their company sites; please have your local tutor send us email to make arrangements.
You are allowed 3 late day credits for the quarter which you may use as needed to accomodate your schedule. Otherwise, late assignments may be penalized 10% for each 24-hour period or fraction thereof (including weekends) that they are late. Beyond 3 days, they are graded/credited only at the sole discretion of the TA. Please try to make prior arrangements with the TA or instructor if you anticipate any problem with this policy.
Since lectures are made available via Stanford Online on the same day they are taped, SITN/SCPD students are expected to follow the same schedule as the rest of the class. This means that the above late assignment policy applies to SITN/SCPD students as well; exceptions are not granted due to students' work obligations.
It should go without saying, but because computer science project courses have a long and ugly history of honor code violations, we will say it anyway:
The Stanford honor code applies to all work done in this course. All work you submit must be your own. Suspected violations of the honor code will be investigated and referred to the Office of Judicial Affairs.
Honor code violations are a serious matter, and being found guilty of one can ruin your academic career. Review the honor code. If you ever find yourself uncertain about how it applies to your situation, ask. Asking what you might think is a silly question is better than risking your career.
No incompletes area given in this course, so make sure you determine before the drop deadline whether you can complete it satisfactorily.