No polls currently selected on this page!


Repository is empty

Distributed processes

Code: 61518
ECTS: 5.0
Lecturers in charge: prof. dr. sc. Robert Manger - Lectures
Lecturers: prof. dr. sc. Robert Manger - Exercises
English level:


All teaching activities will be held in Croatian. However, foreign students in mixed groups will have the opportunity to attend additional office hours with the lecturer and teaching assistants in English to help master the course materials. Additionally, the lecturer will refer foreign students to the corresponding literature in English, as well as give them the possibility of taking the associated exams in English.

1. komponenta

Lecture typeTotal
Lectures 30
Exercises 15
* Load is given in academic hour (1 academic hour = 45 minutes)
COURSE AIMS AND OBJECTIVES: Introduction to the classical problems and techniques of programming concurrent processes within a single system and distributed networked systems. Obtaining insight into current (offered in Java and C#) and more abstract experimental software support for distributed programming.

1. Concurrent processes in shared memory. Basic notions. Software constructs in Java and C# (semaphores, monitors,...). Classical problems of mutual exclusion and synchronization and their classical solutions.
2. Distributed processes. Basic software support (Berkeley sockets, CORBA, Java RMI, .NET Remoting). Models of distributed time. Classical problems of distributed consensus, resource allocation, event detection.
3. A more abstract view. The experimental language "'polyphonic C#" (at the time of writing embedded in the experimental language Comega), offering a more abstract view of the listed problems, based on current theory.
  1. V. K. Garg: Concurrent and Distributed Programming in Java
  2. N. Benton, L. Cardelli, C. Fournet: Modern Concurrency Abstractions for C#
  3. N. A. Lynch, N. Lynch: Distributed Algorithms
4. semester
Mandatory course - Regular study - Computer Science and Mathematics
Consultations schedule: