78810 - Real Time Systems for Automation M

Academic Year 2023/2024

  • Docente: Paolo Torroni
  • Credits: 12
  • SSD: ING-INF/05
  • Language: English
  • Moduli: Andrea Galassi (Modulo 1) Paolo Torroni (Modulo 2) Paolo Torroni (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 Automation Engineering (cod. 8891)

    Also valid for Second cycle degree programme (LM) in Electronic Engineering (cod. 0934)

Learning outcomes

At the end of the course, the student: - is familiar with the fundamental concepts underlying modern operating system organization and functioning, with an emphasis on real-time systems for automation - is able to realize simple concurrent applications using system calls and synchronization mechanisms - is able to analyze, design and implement simple real-time concurrent applications.

Course contents

Course organization

The course is organized into three modules.

The Operating Systems module (60 hours) covers fundamentals of Operating Systems (OS) and is held in fall. Topics: Overview and system structures. Processes and threads. Scheduling. Memory management. I/O systems. Process synchronisation and deadlocks.

The Rea-Time module (30 hours) covers Real-Time (RT) systems and is held in spring. Topics: Basic concepts. Aperiodic task scheduling. Clock-based and priority-based scheduling of periodic tasks. Resource access protocols.

The Lab module (30 hours) offers programming exercises the expand on and integrate the theory studied in the other two modules and it spans over the two semesters (fall: OS lab, spring: RT lab)

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, Eclipse+CDT (open software)

Real Time

All modules

  • Lecture slides, description of lab activities, software, past exams and all teaching material made available on virtuale

Teaching methods

Presential lectures covering theory and exercises, meant to be highly interactive

Supervised lab sessions on Linux with POSIX programming using Eclipse+CDT.

Notice: as per university regulations, all students must attend Module 1, 2 on Health and Safety online.

Assessment methods

Evaluation is specific to each module:

  • OS module: written exam (between 7 and 16 points)
  • RT module: written exam (between 5 and 11 points)
  • Lab module: 3 assignments (up to 5 points, not mandatory)

Once the student has passed the OS module and the RT module, a grade is recorded in the transcript of record, which is the sum of all points gathered in the three modules. It is possible to ask to wait recording the final grade if (1) some assignments are missing and will be delivered soon, or (2) if the student wants to sit either module's written exam once more. It is possible to sit each module's written exam multiple times until the second and final positive evaluation. Each grade overwrites the previous one in the same module and does not influence the other modules' evaluation.

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 description of lab activities and information about assignments.

A limited number of copies of the adopted textbooks and other relevant textbooks are available at the library.

The software used in the lab in the first semester is open source and freely available. The software used in the second semester is proprietary and licensed. The lab software, including the licensed 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 Galassi

SDGs

Quality education

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