Informatics and Real Time Systems

Code 274II
Credits 6

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.
Basic topics are:
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.