182.704 Building Reliable Distributed Systems
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2018W, LU, 4.5h, 4.5EC


  • Semester hours: 4.5
  • Credits: 4.5
  • Type: LU Laboratory Exercise

Aim of course

Acquisition of the basic understanding of practical aspects of distributed algorithms in embedded systems. Participants of this course are able to implement the abstractions (message-passing interface, lock-step synchronous rounds) needed for executing distributed algorithms on a microcontroller board running a real-time operating system, thereby realizing the basic services of a networked embedded system. Executing suitable distributed algorithms in this system lead to a deeper understanding for the resulting overall performance and reliability.

Subject of course

The course is made up of a short introductory part followed by the practical part, which should preferably be performed in groups of two students. The former offers a brief introduction into a real-time operating system (QNX Neutrino, RT-Linux), the used hardware platform (Pandaboard A4 with ARM9) and some basic communication primitives and clock synchronization algorithms. The practical part comprises (i) the installation of a suitable real-time operating system on the hardware platform and its (latency-)evaluation, (ii) the implementation of some low-level abstractions (communication primitives, clock synchronization) for the execution of distributed algorithms, and (iii) the implementation and evaluation of some simple distributed  algorithms on the resulting network embedded system.

Additional information

ECTS breakdown (4.5 ECTS = 112.5 hours):

  4h           Introductory presentations
20h           Reading RTOS and hardware documentation
68.5h        Implementation, test and evaluation work
20h           Documentation and presentation of results



Course dates

Thu13:15 - 14:0011.10.2018 Library E191-2, Treitlstrasse 1-3, 2nd floorIntroduction

Examination modalities

Assessment of architecture, design and evaluation of the solutions and their oral presentation.

Course registration

Not necessary


Study CodeSemesterPrecon.Info
066 938 Computer Engineering


No lecture notes are available.

Previous knowledge

Basic knowledge about distributed and dependable embedded systems; experience in microcontroller and operating systems prorgramming.



if required in English