Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2024/2025

Distributed Systems and Computing

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
NIE-DSV Z,ZK 5 2P+1C English
Course guarantor:
Jan Janeček, Pavel Tvrdík
Lecturer:
Jan Janeček, Pavel Tvrdík
Tutor:
Jan Fesl, Jan Janeček, Peter Macejko, Pavel Tvrdík
Supervisor:
Department of Computer Systems
Synopsis:

Students are introduced to methods for coordination of processes in distributed environment characterised by nondeterministic time responses of computing processes and communication channels. They learn basic algorithms that assure correctness of computations realized by a group of loosely coupled processes and mechanisms that support high availability of both data and services, and safety in case of failures.

Requirements:

Basic knowledge in the area of operating systems, computer networks and communication.

Syllabus of lectures:

1. Distributed applications, communication methods

2. Procedural communication - XML-RPC, CORBA, Java RMI, SOAP/RESTful

3. Model of distributed computation, simple examples

4. Snapshots of distributed computation, logic time

5. Wave algorithm, algorithm symmetry - server selection

6. Exclusive access algorithms

7. Deadlock prediction and detection - on resource sharing and communication

8. Termination of distributed application, quoras

9. Data sharing and replication, distributed databases

10. P2P systems and DHT technologies

11. Agent applications, mobility of computation

12. Architecture of clouds technologies, computation methods

Syllabus of tutorials:

1. Practices introduction

2. Java RMI

3. XML-RPC

4. SOAP

5. CORBA

6. Semestral project presentation

Study Objective:

The module focuses on the distributed computation viewed as an asynchronous cooperation of a group of finite state machines. Substantial part of the lectures is devoted to typical distributed computing techniques: ensuring causality, exclusive access, dealing with deadlocks, fault protection, mobility of computation, and security. The course is concluded with an overview of techniques for distributed data storages using the DHT (Distributed Hash Table) method and an overview of systems with mobile computing components.

Study materials:

1. Dollimore, J. - Kindberg, T. - Coulouris, G. : Distributed Systems: Concepts and Design (5th Edition). Pearson, 2011. ISBN 0132143011.

2. Tanenbaum, A. S. - van Steen, M. : Distributed Systems: Principles and Paradigms (2nd Edition). Create Space Independent Publishing Platform, 2016. ISBN 153028175X.

3. Lynch, N. A. : Distributed Algorithms. Elsevier, 2009. ISBN 8181479645.

4. Tel, G. : Introduction to Distributed Algorithms. Cambridge University Press, 2001. ISBN 0521794838.

5. Wan Fokkink : Distributed Algorithms: An Intuitive Approach (2nd Edition). MIT Press, 2018. ISBN 0262037661.

Note:
Time-table for winter semester 2024/2025:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Mon
roomTH:A-942
Tvrdík P.
11:00–12:30
(lecture parallel1)
Thákurova 7 (budova FSv)
Tue
Wed
Thu
roomT9:351
Fesl J.
18:00–19:30
ODD WEEK

(lecture parallel1
parallel nr.101)

Dejvice
Fri
Time-table for summer semester 2024/2025:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2024-12-30
For updated information see http://bilakniha.cvut.cz/en/predmet6630006.html