University homepage Suomenkielinen versio puuttuu Inte på svenska In english
University of Helsinki Department of Computer Science
 

Department of Computer Science

582417 Distributed Systems (4 cr)

News

  • Grades have been posted on the board and will appear in Oodi soon. Due to the current, stricter interpretations of data protection laws, they cannot be made available on the net.
  • Lecture on 12.11. is canceled as well. There will be a new lecture and exercise schedule which will be posted next week.
  • Lecture on 10.11. is canceled because of illness.
  • We have asked the library to order more course books. They should arrive shortly
  • Exercise directory.
  • First lecture slides are online. See below for link.
  • First exercise is available.
  • Course lectures are available as ICS calendar file

Position in Curriculum

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

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 (available only in Finnish).

Course Prerequisites

The students are expected to master the contents of the courses Operating Systems, Concurrent Systems, and Introduction to Data Communication.

The prerequisities concretely include for example the following:

  • client-server architecture
  • error detection and correction in data storage and data communication
  • file system implementation structure
  • RPC
  • CORBA, RMI, and programming with them
  • message passing and interprocess communication
  • concepts of transactions and serializability, basic idea of distributed snapshots
  • understanding 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: 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) (12 points)
  • return the written homework assignments (3 assignments); each will be graded (6 points)
  • a traditional exam (48 points)
You need minimum 30 points to pass with a minimum of 16 points in the exam. With 50 points you will get a 5. 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 every year, and it involves

  • Lectures 4 hours / week, for 6 weeks. The lectures are in Finnish, but the slides are in English. The slides will be made available later.
  • Practice sessions 2h/week for 6 weeks. One group will be in English, if needed.
  • Written homework to be returned.
  • Course examination (in English when needed).

If you do not understand Finnish you may have to do a bit more independent work. 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

  1. Distributed systems
  2. System components
  3. Interprocess communication
  4. Synchronization: time, coordination and agreement
  5. Consistency and replication
  6. Fault tolerance

Course Material

  • The main textbook of the course is

    Tanenbaum, A.S., van Steen, M., Distributed Systems, Principles and Paradigms; Prentice-Hall, 2007. The topics of the course are mainly in chapters 1,2, 4, and 6-8. Chapters 3 and 5 review material which is part of the pre-requisites of this course.

    In the 2002 edition of Tanenbaum and in the Couloris book you can find mostly the equivalent material. You can use the slides to give you an idea of the breadth of topics covered.

  • Some old exams are available, as well as (old excercise questions)

  • The book of Tanenbaum and van Steen can be purchased in Academic Bookstore, in University Bookstore, or in Dataclub; the price should be about 60-70 euros.

  • 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.

Slides and Exercises

Lecture slides available in this directory

Exercises will be made available in this directory.


Jussi Kangasharju Last modified: Thu Jan 7 11:30:51 EET 2010