CS4/MSc Distributed Systems
This module runs in the first semester, on Monday and Thursday at
15:00 - 15:50, taught by
Richard Mayr.
Lectures will take place in AT LT3 (Appleton tower, lecture theatre 3).
Richard Mayr's office hour
is Mondays 14:00-15:00 and he can be found in room IF 4.11.
A distributed system is broadly categorised as a collection or network
of loosely coupled, autonomous computers that can communicate with
each other and execute logically separate computations, though these
may be related to concurrent computations on other nodes.
- The nodes are relatively loosely coupled.
- Each node is a self-contained autonomous computer with its own
peripherals.
- The system can survive various categories of node and network
failures.
- The nodes may execute logically separate computations, though
these may be related to concurrent computations on other nodes.
- The system is asynchronous.
Distributed systems have become pervasive---many applications now
require the cooperation of two or more computers--yet the design and
implementation of such systems remain challenging and complex tasks.
Difficulties arise from the concurrency of components, the lack of a
global clock and the possibility of independent failure of components.
Moreover designs must aim to provide inter-operability, transparency
and autonomy.
The emphasis of this module is on gaining understanding of the
principles and concepts that are used to design distributed systems
and experience of software platforms which underpin their development.
- Documents
- Slides
Slides will typically be available from the web page a day or two
before the lecture.
- Programs
- Helpful Web pages
- Books
- Distributed Systems: Concepts and Design ,
G. Coulouris, J. Dollimore and T. Kindberg,
Addison-Wesley, 2005 Fourth Edition. (or 5th Edition).
This is the required course text and you will find
that lectures relate quite closely to chapters.
Web pages supporting the book, can be found
here.
-
Andrew S. Tanenbaum and Maarten Van Steen, Distributed Systems: Principles and Paradigms, Prentice Hall, September 2001.
(web site: http://www.cs.vu.nl/~ast/books/ds1/)
-
Nancy A. Lynch, Distributed Algorithms, Morgan Kaufmann, 1996.
-
Andrew S. Tanenbaum, Computer Networks, 3rd ed., Prentice-Hall, 1996.
-
R. Chow and T. Johnson, Distributed Operating systems and Algorithms, Addison-Wesley, 1997.
- Coursework
- Projects (for level 11 students only!): Assigned: 17. Oct., Submission
Deadline: 24. Nov, 4PM at the ITO., Returned:
8. Dec., Download link. .
Instructions for submission of program code (for project 1 only): Use the
electronic submission system with the `submit' command and course code ds
(not ds-5; this has been deleted), i.e., use `submit ds 1 filename'
(see link )
to submit your program code electronically.
Also submit a paper copy of your code together with your writeup at the ITO.
Instructions for submission of project 2: Submit a paper copy of your essay at the ITO.
-
Grading: The final exam counts for 85%, and the coursework (and project at level 11) count for 15%.
These 15% are split as follows for level 10 and level 11 students.
-
For level 10 students: The coursework counts for 15%.
-
For level 11 students: Coursework counts for 7%. Project counts for 8%.
- Exams
Note that there has been a substantial revision of
the module in the academic year 2001/2, and a minor one in
2002/3. Nevertheless you should find some questions on past exam
papers useful for revision purposes.
This page is maintained by the course lecturer
Richard Mayr.