Real-Time Systems

This course is part of the Master of Science in Embedded Computing Systems
jointly offered by the University of Pisa and the Scuola Superiore Sant’Anna

To receive Email notifications about any change on course lectures and exams please register to this web page.

Course slides

  1. Introduction
  2. Task modeling
  3. Job scheduling
  4. Periodic scheduling
  5. Resource sharing
  6. Limited preemptive scheduling
  7. Aperiodic servers
  8. Resource reservation
  9. Overload handling
  10. Intertask communication
  11. Programming style rules
  12. Pthread library
  13. Allegro library
  14. Guidelines for designing real-time applications
  15. Examples of real-time applications
  16. Simulating sensors and actuators

Additional material


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.



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