Real-Time Systems
Informatica e Sistemi in Tempo Reale
Giorgio Buttazzo
IMPORTANT NOTICE - Lectures schedule:
MONDAY: 15:00 - 18:00 (TeCIP, Aula Grigia)
TUESDAY: 15:00 - 18:00 (ING, Aula F7)
WEDNESDAY: 11:30 - 13:30 (ING, Aula F7)
To receive Email notifications about any change on course lectures and exams please
register in this file.
Course slides
- Introduction
- Task modeling
- Deriving task constraints
- Job scheduling
- Periodic scheduling (fixed priorities)
- Periodic scheduling (dynamic priorities)
- Workload analysis
- Resource sharing protocols (part 1)
- Resource sharing protocols (part 2)
- Limited preemptive scheduling
- Fixed-priority Aperiodic servers
- Dynamic-priority Aperiodic servers
- Resource reservation
- Overload handling
- Intertask communication
- Programming style rules
- Pthread library
- Ptask library
- Allegro library
- Guidelines for designing real-time applications
- Examples of real-time applications - Part 1
- Examples of real-time applications - Part 2
- Simulating sensors and actuators
Additional material
Exam
The exam consists of a project followed by a written test.
- The project consists of developing a real-time multi-thread application
in C language on the Linux operating system.
It must be fully completed and delivered before the written test.
The project rules are specified below.
- The written test consists of a set of exercises and questions that
cover the topics of the course.
Some sample exercises with the corresponding solutions are given below.
Projects
Exercises
Suggested Books
- Giorgio Buttazzo: "HARD REAL-TIME COMPUTING SYSTEMS: Predictable
Scheduling Algorithms and Applications",
Third Edition, Springer, 2011.
Errata Corrige
- Giorgio Buttazzo: Sistemi in Tempo Reale, Terza Edizione
Pitagora Editrice, Bologna, 2006.
Errata Corrige