This chapter explains mechanisms available for process isolation support in CMSIS-RTOS2 API.
CMSIS-RTOS2 API defines a set of features to protect critical parts of an application against software flaws that may exist in other parts of an application.
- MPU Protected Zones for memory access protection in the system.
RTOS threads can access only memory regions and peripherals based on their MPU Protected Zone assignment. Non-privileged thread code cannot accidentally modify critical RTOS kernel data or memory belonging to other zones.
- Safety Classes for access protection to RTOS objects.
The RTOS objects with a higher safety class assigned to them cannot be modified via RTOS API functions from threads that have lower safety class assigned.
- Thread Watchdogs to verify execution times of threads.
Each thread can maintain own thread watchdog and in case of timing violations, corresponding thread watchdog alarm will be triggered.
- Fault Handling in case of a detected failure (for example thread watchdog alarm or MPU Fault).
The RTOS provides functions to block execution of malfunctioning components and with that dedicate system resources for operation of the safety critical threads.