Course Unit Profile

<--- Back to Course Diagram

Basic Information


Course Unit Code: 274II

Level of course unit

Degree Programme in Robotics and Automation Engineering - Second Cycle (Laurea magistrale)

Year of study

First year

Semester when the course is delivered

Second semester

Number of ECTS credits allocated: 6

Name of Lecturer(s):

To be defined.

Language of instruction


General Information

Learning outcomes

The student who successfully completes the course will have the ability to design software for control applications with timing requirements; will be able to demonstrate a solid knowledge on real-time operating systems and resource management; will be able to demonstrate advanced knowledge on scheduling and timing analysis; will be aware of critical situations, software pit traps in programming, and efficient solutions to avoid them.

Course contents

1. Basic concepts on real-time computing. Typical real-time applications. Task models. Metrics for performance evaluation.
2. Real-Time scheduling algorithms. Scheduling periodic and aperiodic tasks. Response-time analysis.
3. Protocols for accessing shared resources. The priority inversion phenomenon. Priority Inheritance and Priority Ceiling Protocols. Estimating blocking times.
4. Overload management. Admission Control. Robust Scheduling. Imprecise Computation. Job Skipping. Elastic scheduling. Resource reservation mechanisms.
5. Predictable inter-task communication mechanisms.

Specific Information

Prerequisites, co-requisites, as a prerequisite for further study





Prerequisite for


Mode of delivery


face to face



Teaching methods

Learning activities

Recommended or required reading

Recommended reading includes the following text books:
1. Giorgio Buttazzo, Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications", Third Edition, Springer, 2011.
2. Giorgio Buttazzo, Sistemi in Tempo Reale, Terza Edizione, Pitagora Editrice, Bologna, 2006.

Assessment methods and criteria

Assessment methods

Further information

The final exam consists of a written test on the course topics and a programming project consisisting in the development of a real-time application, described in a short project report.

Assessment criteria

- The student will be assessed on his/her demonstrated ability to discuss the main course contents using the appropriate terminology. - In the written exam (90 minutes), the student must demonstrate his/her knowledge of the course material and to organise an effective and correctly written reply. - With the project work the student must demonstrate the ability to address a proctical application and describe the solutions in a technical report.

Work placement


<--- Back to Course Diagram