Distributed Systems

Logo

Bachelor in Informatics Engineering

2025/2026

An introductory course on concurrent and distributed systems.

The first component provides an introduction to shared memory concurrent programming including both an understanding of core problemas (e.g., races), fundamental mutual exclusion algorithms, and practical application to programming with locks and condition variables.

The second component focuses on mechanisms for distributed systems, focusing on the client-server paradigm and a bottom up approach to remote invocation middleware.

Finally, a third component provides a general introduction to abstract system models, fundamental problems, and key algorithms (agreement, logical time, search and routing, …), focusing on the relevance and applicability of each of them.

Learning outcomes

Instructors