Roadmap / Firmware
RTOS
When the workload grows, one endless loop cannot cope. A real-time operating system is the answer.
Goal Split work into tasks and run them without synchronization bugs.
- 01Limits of the super loop
The delay and complexity of doing everything in one loop.
- 02Tasks and the scheduler
Splitting work into tasks, and how the scheduler shares time.
- 03Priority and preemption
Urgent tasks pushing less urgent ones aside.
- 04Semaphores and mutexes
Keeping two tasks from touching a shared resource at once.
- 05Queues and event groups
Passing data and signals between tasks safely.
- 06Priority inversion
A low task blocking a high one, and priority inheritance.
- 07Memory and stack management
Sizing each task's stack and detecting overflow.
- 08FreeRTOS in practice
Sensor reading, communication and control as tasks on an STM32.