Distributed Systems (600.437, 600.337)

Yair Amir & Jonathan Stanton

Course description for Fall 2000:

Distributed Systems and Environments
====================================

The course teaches how to design and implement efficient tools,
protocols and systems in a distributed environment.
The course tries to give some hands-on experience as well as some
theoretical background.
The programming assignments and the project in the course can be 
done in either C/C++ or Java. These assignments will use a cluster 
of workstations as well as several software research tools.

Prerequisite: 
        Intermediate programming course 
	and Data Structures ( 600.226 )

Click here for the course official page. Both pages should be current in terms of slides.

Lectures of the Distributed Systems course (Fall 2000):

Introduction, (also available as PostScript)

Basic communication protocols, (also available as PostScript)

Synchronized consensus models, (also available as PostScript) updated after the tutorial.

Multicast protocols, (also available as PostScript)

Group communication, (also available as PostScript)

Asynchronous consensus models, (also available as PostScript)

Distributed operating systems, (also available as PostScript)

Distributed transactions, (also available as PostScript)

Replication, (also available as PostScript)

Distributed Objects, (also available as PostScript)


Old lectures of the Distributed Systems course (Fall 1999):

Communication and Knowledge, (also available as PostScript)

Security, (also available as PostScript)


Lectures we no longer teach:

Clock synchronization, (also available as PostScript)