Real Time Systems


1) Knowledge: a) Fundamental concepts of real time systems and concurrent programming. b) Design and analysis of discret embedded systems.

2) Know how: a) Real time and embedded systems modeling capacity. b) Concurrent systems programming and physical systems interfacing capacity. c) Show creativity regarding real time and distributed systems cases.

3) Transferrable skills: a) Team work capacity. b) Time management and deadlines fulfillment capacity.

General characterization





Responsible teacher

Luís Manuel Camarinha de Matos


Weekly - 4

Total - 65

Teaching language



Basic programming skills.


Real Time Systems – summary of lectures (Course handouts)

Selected papers.

Teaching method

Theoretical part: Formal lectures.

Practical component: Development of lab assignments, with support by teaching staff.

Evaluation method

2 Tests (theory)(60%) + 3 Lab works (40%)

Minimum grade in each component: 9.5

Subject matter

Base concepts and motivation: processes, events, concurrency, synchronization, exclusivity, comunication. Examples of real time systems.

Support mechanisms: semaphores, mailboxes, ports, remote procedure calls, etc..

Kernels and embedded systems.

Modeling and analysis of concurrent systems.

Petri nets: base concepts, methods of analysis, types of networks - "normal", with capacities and weights, limited, with inhibit arc, timed , colored, continuous and hybrid.

Concurrent programming languages.

Introduction to PLCs.

Applications to the control of discrete event systems.


Programs where the course is taught: