Search course

Use the search function to find more information about the study programmes and courses available at Chalmers. When there is a course homepage, a house symbol is shown that leads to this page.

Graduate courses

Departments' graduate courses for PhD-students.


Syllabus for

Academic year
EDA423 - Dependable Real-Time Systems
Pålitliga realtidssystem
Syllabus adopted 2019-02-08 by Head of Programme (or corresponding)
Owner: MPCSN
7,5 Credits
Grading: TH - Five, Four, Three, Fail
Education cycle: Second-cycle
Major subject: Computer Science and Engineering, Information Technology

The course is full. For waiting list, please contact the director of studies:
Teaching language: English
Application code: 12122
Open for exchange students: No
Block schedule: C
Maximum participants: 18

Module   Credit distribution   Examination dates
Sp1 Sp2 Sp3 Sp4 Summer course No Sp
0119 Written and oral assignments 4,0 c Grading: TH   4,0 c    
0219 Written and oral assignments 3,5 c Grading: TH   3,5 c    

In programs



Jan Jonsson

  Go to Course Homepage


EDA420   Parallel and distributed real-time systems EDA421   Parallel and distributed real-time systems EDA422   Parallel and distributed real-time systems


In order to be eligible for a second cycle course the applicant needs to fulfil the general and specific entry requirements of the programme that owns the course. (If the second cycle course is owned by a first cycle programme, second cycle entry requirements apply.)
Exemption from the eligibility requirement: Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling these requirements.

Course specific prerequisites

A pass grade in the preparatory course EDA223 Real-Time Systems is required. Courses in algorithms and computer architecture are strongly recommended.


Real-time systems play a vital role in many safety-critical application domains. In order to meet imposed application constraints these systems must often be designed with multiple processors. Such requirements can occur when tasks need to be physically distributed (as in a fault-tolerant vehicle braking system) or when the inherent parallelism of the application need to be fully exploited (as in a high-performance multimedia application). This course is intended to give a deeper understanding of the problems involved in designing dependable real-time systems based on multiprocessor architectures.

Learning outcomes (after completion of the course the student should be able to)

After the course the students shall be able to:
  • Formulate requirements for computer systems used in time- and safety critical applications.
  • Demonstrate knowledge about the terminology of scheduling, dependability and complexity theory.
  • Describe the principles and mechanisms used for scheduling of task execution and data communication in real-time systems.
  • Design real-time systems and apply techniques to verify whether the real-time requirements are met or not.
  • Derive the theoretical performance limitations of a given real-time system.
  • Reason about advantages and disadvantages regarding the choice of the optimal design for a real-time systems given certain conditions.


The course covers the following topics:
  • Background: motivation for, and definition of, real-time computing systems.
  • Characteristics of real-time systems: application constraints, design methods, task models, run-time mechanisms, architectures.
  • Evaluation of real-time systems: performance measures, evaluation methodologies.
  • Single and multiprocessor scheduling: problem definition, terminology, and algorithms.
  • Complexity theory and NP-completeness in the context of real-time scheduling.
  • Real-time communications: protocols and end-to-end delay guarantees.
  • Fault-tolerance techniques for real-time systems: models, algorithms and architectures.


The course is organized as a series of lectures, and two homework assignments where the students solve problems related to the specific topics covered during the lectures. A weekly consultation session offers assistance regarding questions and problems related to the homework assignments.


Lecture notes. Selected research publications from journals and conference proceedings.

Examination including compulsory elements

The course is examined by two homework assignments, one in the beginning of the course and the other at the end of the course. For the first homework assignments the student shall implement a dependable software for a distributed real-time system, that is examined by means of documentation and demonstration of the software. For the second homework assignment the student shall solve a set of theoretical problems and document the solutions in a written report that is orally examined. The homework assignments are carried out normally in groups of two students, while the examination and grading of the assignments are individually performed.

The final grade of the whole course, according to the scale Fail (U) or Pass (3, 4, 5), is based on the average of the grades of the two homework assignments, with the requirement that the student passes both homework assignments.

Page manager Published: Thu 04 Feb 2021.