University homepage Suomeksi På svenska In
english
University of Helsinki Department of Computer Science
 

Department of Computer Science

582417 Distributed Systems (4 cr, 2 cu)

Link to the new course description page

Course page for year2008

- Position in Curriculum

This is a laudatur-level course in Computer Science. The course is obligatory for those who intend to specialize in the area of "Distributed Systems and Data Communication".

The contents of the course will change in Spring 2007 (6 cr --> 4 cr).

- Goal

The course intends to give insight into the main concepts and design principles related with distribution. Goals, challenges, problems, and various solutions are presented and discussed. The emphasis is on concepts and principles, not on practical implementations.

The learning goals of the course are listed in a separate table.

- Course Prerequisites

The students are expected to master the contents of the courses Operating Systems (8 cp, 4 cu; autumn 2006), Concurrent Systems, and Introduction to Data Communication.

The prerequisities include concretely for example the following.

  • client-server architecture
  • error detection and correction in data storages and data communication
  • file system implementation structure
  • RPC
  • CORBA, RMI, programming with them
  • message passing and interprocess communication
  • concepts of transactions and serializability, idea of distributed snapshots
  • idea on how DNS and WWW work

- Methods for Achieving Credit

    The course can be taken either through participating in a lecture course or through a final exam (exam dates for both the lecture course and final examination only options: see exam dates).

    To pass the lecture course you need to

    • participate the weekly excercise sessions (one of the groups work in English if needed) (20 points)
    • return in writing the homework assignments given (4 assignments); each report will be graded (30 points)
    • a traditional examination (50 points)

     
    To take a course you have to register yourself through the ILMO system at http://www.cs.helsinki.fi/opiskelu/ohjeet/ilmoittautuminen-en.htm

    Lecture Course
    The lecture course is given annually, and it involves
    • lectures 4 hours / week, for 6 weeks the lectures are in Finnish, the slides are in English; the handouts are available in pdf format (for personal use, only)
    • practice sessions 2h/week for 6 weeks ( exercise assignments and one group in English, if needed)
    • homework essays to be returned in writing; assignments can be found together with the exercises pages
    • course examination (in English when needed).

    If you do not understand Finnish you will have a significant amount of independent work to do. You should acquire a textbook (the slides are just an extended list of contents!), read it to keep pace with the lectures, do most of the homeworks for each problem set, attend all practice sessions, and weekly check that you master all the preceding material.

    Final Examination
    Final examinations are organized typically four times a year. If you want to take a final examination in English you have to inform the instructor about this one week before the examination (in addition to the normal registration). Notice that a "course examination" and a "final examination" are two different things: in order to participate in a course examination you also must have participated in the corresponding practice sessions.

- List of Contents 2006

  1. Distributed systems (Tanenbaum, van Steen: Ch. 1)
  2. System components (Ch. 1)
  3. Interprocess communication (Ch. 2)
  4. Synchronization: time, coordination and agreement (Ch. 5)
  5. Consistency and replication (Ch. 6)
  6. Fault tolerance (Ch. 7)
  7. Distributed file systems (Ch. 10)

- Course Material

  • The main textbook of the course is

    Tanenbaum, A.S., van Steen, M., Distributed Systems, Principles and Paradigms; Prentice-Hall, 2002.
    The topics covered can be found in chapters   1;  2.2-4;  5;  6.1-5;  7;  10.1-2.  

  • Essential parts of the material can be found in

    Coulouris,G.F., Dollimore,J., Kindberg,T., Distributed Systems, Concepts and Design; 4th ed.; Addison-Wesley, 2005.
    The topics covered can be found in chapters   1, 2,  4,  8,  11-15,  18.4-5. Some parts which are treated more superficially in Tanenbaum's book get a more detailed description (transactions, file systems, for example). On the other hand, this book does not cover all the topics treated on the course.

  • Some old examinations are available, it might be worth while to have a look at them.

  • The book of Tanenbaum and van Steen can be purchased in the Academic Bookstore, in the University Bookstore, or in Dataclub; the price should be about 62 euros (Yliopistonkirjakauppa; Fall 2005).

  • All local materials can used according to GNU Free Documentation Licence. The slides include original figures from the textbook e-materials. These figures can be used only according to the copyright rules presented in the corresponding textbook.


Lea Kutvonen