Real-time is not a synonym for fast. It is a promise about the worst case, and this course is built on never asserting that promise without measuring it first. Every number on screen comes from real FreeRTOS firmware, built and run under QEMU on real ARM Cortex-M3 hardware models, captured by a script you can re-run yourself. It starts with the failure mode that makes an RTOS necessary. A bare superloop misses a real, cycle-counted deadline. Priority inversion is measured directly: a low-priority task blocks a high-priority one for 195 ticks with no fix, 11 ticks with priority inheritance, against a 20-tick designed critical section. Worst-case execution time is shown to be 22.35 times the mean of the same code path, not a rounding error.
Then the real mechanics, one at a time, each with its own firmware. Queues, mutexes, semaphores, and task notifications, distinguished by what they actually cost: a queue allocates real heap, a notification allocates none because the slot already lives in the task’s own control block. Interrupts measured end to end at 76 to 459 microseconds of real latency, a 6 times spread, because this book’s own QEMU target is not cycle-accurate and the course says so rather than hiding it. Four heap allocators put through the identical fragmentation test, one of them shown to have a real, unbounded collision risk against the stack that the others structurally cannot have.
Four full robot projects, not toy demos. A control loop with a response-time bound that has to be corrected mid-build when the by-hand math turns out to assume the wrong dependency. A sensor-fusion task set where a generalization test to a second sensor accidentally uncovers a bug the original design never surfaced. An event-driven state machine whose first safety bound is wrong by 10 to 20 times until the real cause, a full period of interference rather than just one task’s execution time, is found and fixed. A fault-tolerant actuator arbitration system that layers priority inheritance, bounded waits, a runtime assertion, and a real hardware watchdog, and states plainly which layer catches which real failure.






