The Course Schedule
- September 20: Introduction to the course,
up to soft real-time systems
- September 21: end of the introductory slides,
and scheduling theory, up to cyclic executives
- September 27: cyclic executives and fixed-priority
scheduling, including utilisation-based analysis
- September 28: real-time APIs and
how to implement a periodic behaviour in a task (for this, and all
the other practical lessons in the lab, see here
- October 4: finish the introduction on
scheduling, and discuss
dynamic priorities
- October 5: finish real-time APIs
- October 11: Response Time Analysis,
with exercises
- October 15: Implement a cyclic executive
scheduler; processes and threads
- October 18: Time Demand Analysis
and sensitivity analysis
- October 22: Implementing periodic processes,
and setting the scheduling parameters
- October 25: Sporadic Server and
introduction to Shared Resources
- October 29: no lesson
- November 5: wait(), signal, and real-time signals;
introduction to posix threads
- November 8: NPP, PI, HLP, etc... Introduction to
real-time kernels
- November 12: pthreads and mutexes
- November 15: kernel latencies (introduction, kinds of latencies,
latency sources) and I/O in the kernel
- November 19: real-time threads and periodic threads (using
periodic timers with pthreads, etc...). Example of
real-time application.
- November 22: The
timer resolution latency
- November 26: real-time threads (again),
condition variables and introduction
to cross compilation
- November 29: The non-preemptable sections latency,
introduction to real-time executives