Kursöversikt

Course Assistants:

Fazeleh Sadat Hoseini [Homework Assignment], fazeleh [at] chalmers [dot] se
Beshr Al Nahas [Lab 2], beshr [at] chalmers [dot] se 
Hannaneh Najdataei [Lab 1], hannajd [at] chalmers [dot] se

TAs office hours for assistance on the assignments: 

Every group has to (MANDATORY) book a slot for both Lab 1 and Lab 2 from the provided doodles:
Lab 1: 1 group can pick the same time slot as there will be 1 TA available, please book a slot from the doodle (Länkar till en externa sida.)Länkar till en externa sida.
 (Länkar till en externa sida.)
Länkar till en externa sida.
Lab 2: 1 group can pick the same time slot as there will be 1 TA available, please book a slot at https://doodle.com/poll/sgm64p5ifwpebxc9
 (Länkar till en externa sida.)
Länkar till en externa sida.
For the TA session of lab 2, come to the corner room (5471), which is just at the end of the corridor on the fifth floor. Please knock on my door (5103) if you do not find me there.

 

Apart from the mandatory visits, you can visit TAs in the weeks that doodles do not cover:
Mondays 15:00 - 16:00, room 5128 or as redirected from there.

Course Hours/Place:

Mondays 10-12, EL42 (from Monday, Jan 21st)
Wednesdays 13:15-15:00, EL42 
Fridays 10-12, EL42

The course starts on Monday, January 21st.
See also the Course Schedule. Note that it might be subject to changes during the course so check it regularly.

Programming assignments:

All programming assignments are to be done in groups of 2.
  • 1st Assignment is due 22nd of February 2019
  • 2nd Assignment is due 15th of March, 2019

Homework assignment:

The homework assignment is to be done in groups of 2. There are multiple deadlines for this assignment and the first one (paper selection) is due 1st of  February, 2019. More information here.

Literature:

We will use the Fifth Edition of the book titled "Distributed Systems: Concepts and Design" written by: George Coulouris, Jean Dollimore, Tim Kindberg and Gordon Blair, and published by Addison-Wesley, ISBN-10: 0132143011, ISBN-13: 9780132143011. For special themes we will use additional literature items (scientific papers), which will be specified/distributed during the course and, whenever possible, will be made available via the webpage of the course.

Slides:

The slides for the lectures will be published gradually after each lecture in the Course Schedule and in the respective Documents folder.
For more slides from last year, see the Files.

Reading Material:

For the exam you have to study:

Reading material for the homework assignment can be found here.

Course Description

Distributed systems is a popular and powerful computing paradigm. Their importance increases as networked computers become more common than free-standing ones, especially since many different types of computers can be found in networks.

In this course we will see the points of inherent difference and strength of distributed systems compared with sequential or strongly-coupled systems; consequently, we will also study the issues and problems that have to be addressed and solved efficiently for these differences to be taken advantage of, so that the system retains its strength and high potential.

In particular, we will address and study the following issues in distributed systems: 
a) Synchronization: Continuation (after the course "Distributed Systems I") of the study of distributed clock-synchronization and its uses in mutual exclusion; study about resource allocation in general. Advance one step further, to see how to get solutions without the need for clock synchronization (and hence of lower cost in practice). 
b) Replication: The advantages and costs of replicating data: the potential improvement in response times and reliability, and the extra communication costs involved in keeping data consistent. 
c) Fault-tolerant Agreement in Distributed Systems: (a very special and significant problem, since it is a key issue in most synchronization and coordination problems in distributed systems) Study of the basic impossibility results and discuss their implications; proceed with solutions and protocols for systems with certain strengths and design structures. 
d) Distributed Shared Memory: The difference between shared-memory-based programming and message-passing-based programming; types of consistency; write-update and write-invalidate protocols. 
e) Resource allocation.

Course Evaluation

A team of students representing the GU-CS students, the CTH International Master's program students, and the "local" CTH students is formed. The team's task is to:
- provide feedback from students
- take part in mid- and final-evaluation meetings 
- write meeting minutes; and
- together with the teacher compile the final evaluation report.

The team is initially comprised of the following students (If you want to join lets us know. The list will be finalized during the first week of the course):

 

  • TBA

Kurssammanfattning:

Datum Information Sista inlämningsdatum