- Docente: Paolo Torroni
- Credits: 6
- SSD: ING-INF/05
- Language: English
- Moduli: Paolo Torroni (Modulo 1) Andrea Melis (Modulo 2) Davide Berardi (Modulo 3)
- Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2) Traditional lectures (Modulo 3)
- Campus: Bologna
-
Corso:
Second cycle degree programme (LM) in
Electronic Engineering for Intelligent Vehicles (cod. 5917)
Also valid for Second cycle degree programme (LM) in Automation Engineering (cod. 8891)
Second cycle degree programme (LM) in Electrical Energy Engineering (cod. 9066)
Learning outcomes
The course covers the fundamentals of modern real-time operating systems. Arguments that are addressed in the course are architecture, organization, and functionalities of modern operating systems, task management and resource allocation, mechanisms and tools for synchronisation and concurrent programming, characteristics of real-time operating systems and main scheduling algorithms for hard real-time periodic processes.
Course contents
Course organization
Real Time OS M is a 6 cfu, 60 hours course for EEIV students, which together with Architectures & Firmware M constitute a 12 cfu integrated course called HARDWARE-SOFTWARE DESIGN OF EMBEDDED SYSTEMS M.
This year, Real Time OS M is itself divided in three modules. Two modules are in fall, and one in spring.
The fall modules (30 hours) cover fundamentals of Operating Systems and includes some hands-on sessions in the lab.
The spring module (30 hours) covers Real-Time systems, shares lectures and exams with students of the Automation Engineering masters degree, and does not include any lab. However, EEIV students interested in Real-Time lab can add the Lab of Real-Time Operating Systems course to their study plan.
Contents
- Operating Systems (fall lectures): Overview and system structures. Processes and threads. Scheduling. Memory management. I/O systems. Process synchronisation and deadlocks.
- Real Time (spring lectures): Basic concepts. Aperiodic task scheduling. Clock-based and priority-based scheduling of periodic tasks. Resource access protocols.
Readings/Bibliography
Operating Systems
- Abraham Silberschatz, Peter B. Galvin, Greg Gagne. Operating System Concepts, 9th Edition. International Student Version. Wiley 2013. ISBN: 978-1-118-09375-7. Editions 8 or 10 are equally good.
Chapters 1 — 9 & 13 - Lab sofware: Linux Debian, Eclipse+CDT (open software)
Real Time
- Giorgio C. Buttazzo. Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications, 3rd Edition. Springer 2011. ISBN: 978-1-4614-3019-3
Chapters 1 — 4, 7 & 11
All modules
- Lecture slides, description of lab activities, software, past exams and all teaching material made available on virtuale
Teaching methods
Supervised lab sessions on Linux with POSIX programming using Eclipse+CDT.
Assessment methods
Operating Systems: oral exam.
Real-Time: written exam.
For EEIV students, the final grade is 1/4 the grade obtained in OS + 1/4 the grade obtained in RT + 1/2 the grade obtained in Architectures & Firmware.
To register the grade, after passing all three exams of HARDWARE-SOFTWARE DESIGN OF EMBEDDED SYSTEMS M I.C. (OS, RT and AF), you should send an email to prof. Torroni.
Teaching tools
Relevant learning material will be made available via virtuale.
Lecture slides will be made available before class. Annotated lecture slides may also be made available, containing the annotations taken by the lecturer during class, as well as some past exams, if available.
The virtuale web site will also contain
A limited number of copies of the adopted textbooks and other relevant textbooks are available at the library.
The software used in the lab is open source and freely available. The lab software can also be installed on the student's own computer. In this way, lab work can be carried out autonomously, without having to access the lab.
Office hours
See the website of Paolo Torroni
See the website of Andrea Melis
See the website of Davide Berardi
SDGs

This teaching activity contributes to the achievement of the Sustainable Development Goals of the UN 2030 Agenda.