Part 1: Real-time systems characteristics, concurrency, synchronization and communication (days 1 and 2)
Fundamentals and concepts of real-time embedded software systems. Concurrency primitives. Multitasking issues. Programming models. Communication and synchronization. RT Operating systems.
Part 2: Real-time scheduling with Rate Monotonic Analysis (day 3)
Introduction to scheduling. Scheduling analysis with periodic, sporadic and aperiodic events. Rate Monotonic Scheduling with and without resource contention. Response-time calculations. Deadline Monotonic vs Rate Monotonic scheduling. Fixed priority vs dynamic priority.
Part 3: Design issues in real-time systems (day 4)
Why is real-time different from non-real-time? General aspects, abstraction levels, methodological aspects of RT design (object orientation and real-time, RT object oriented languages, modeling RT systems in UML2.
Part 4: Interactive workshop (day 5)
Requirements, design of structure (applying general and task structuring heuristics), specification of behaviour, analyzing timing contraints, analyzing schedulability (assigning priorities, identifying resources, priority inheritance and priority ceiling), programming model dependencies.