Search programme

​Use the search function to search amongst programmes at Chalmers. The programme overview and the programme syllabus relating to your studies are generally from the academic year you began your studies.

​​​

Syllabus for

Academic year
TDA296 - Distributed systems II
 
Owner: TDATA
4,0 Credits (ECTS 6)
Grading: TH - Five, Four, Three, Not passed
Level: A
Department: 0701 - Datavetenskap DI CTH/GU


Teaching language: Swedish

Course module   Credit distribution   Examination dates
Sp1 Sp2 Sp3 Sp4 No Sp
0101 Examination 4,0 c Grading: TH   4,0 c   25 May 2004 am M,  Contact examiner,  26 Aug 2004 pm V
0201 Laboratory 0,0 c Grading: UG   0,0 c    

In programs

TAUTA AUTOMATION AND MECHATRONICS ENGENEERING, Year 4 (elective)
TTFYA ENGINEERING PHYSICS, Year 4 (elective)
TITEA INFORMATION ENGINEERING, Year 3 (elective)
TDATA COMPUTER SCIENCE AND ENGINEERING, Year 3 (elective)
TDATA COMPUTER SCIENCE AND ENGINEERING - Communications System, Year 4 (elective)
DCMAS MSc PROGR IN DEPENDABLE COMPUTER SYSTEMS - Dependable Architectures, Year 1 
DCMAS MSc PROGR IN DEPENDABLE COMPUTER SYSTEMS - Dependable Programming, Year 1 (elective)
TELTA ELECTRICAL ENGINEERING, Year 4 (elective)

Examiner:




  Go to Course Homepage

Eligibility:

For single subject courses within Chalmers programmes the same eligibility requirements apply, as to the programme(s) that the course is part of.

Course specific prerequisites

Basic programming skills and the course Distribuerade system (TIN160) or comparable background.

Aim

Distributed systems are 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.

Content

In particular, we will address and study the following issues in distributed systems:
Synchronization:
Continuation (after the course Distribuerade System (TIN160)) of the study of distributed clocksynchronization 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 synchronisation (and hence of lower cost in practice).
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.
Concurrency control:
Study of different types of locking, deadlock detection. Additionally, study of concurrency control methods without locking.
Recovery and Fault Tolerance:
Check-pointing, optimistic and pessimistic recovery control.
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.
Distributed Shared Memory:
The difference between shared-memory-based programming and message-passing-based programming; types of consistency; write-update and write-invalidate protocols.

Literature

When the course last was given, the book "Distributed Systems" by: George Coulouris, Jean Dollimore and Tim Kindberg (ADDISON-WESLEY, 1996, ISBN 0-201-62433-8) was used. Updated information about literature can before the course starts be found on the course's homepage.
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 a www site for the course.

Examination

There will be a final written examination, as well as a couple of assignments during the term, in combination with a small practical project. The overall grading will be in the scale U, 3, 4, and 5.
The practical project will give the opportunity to students to uncover the fundamental attributes and characteristics of the protocols that will be discussed in the class. The project will be based on existing simulators and animation libraries and it will involve some programming in C, C++.


Page manager Published: Thu 03 Nov 2022.