Utilizziamo i cookie per rendere migliore la tua esperienza di navigazione. Per rispettare la nuova direttiva sulla privacy, è necessario chiedere il tuo consenso per impostare i cookie. Per saperne di più.
The use of a real-time operating system (RTOS) in a safety-critical system demands that the RTOS component also undergoes rigorous verification. In cases when regulatory certification is mandatory this also implies specific documentation and testing processes for the targeted safety standards. To enable and streamline the product safety certification, Arm provides FuSa RTX RTOS as part of FuSa RTS package, that is qualified for use in automotive, industrial, railway and medical applications.
FUSA RTX RTOS
FuSa RTX is a deterministic real-time operating system (RTOS) that reliably manages multiple application threads with priority-based, pre-emptive scheduling.
RTX RTOS offers all services needed in complex real-time applications, such as threads, timers, memory and object management, message exchange and others.
The RTX kernel is highly optimized for Cortex-M architecture and has multiple provisions that naturally improve the reliability of an embedded application.
STRICTLY VALIDATED CODE
- MISRA C rules: RTX is written in C using C99 language extensions with MISRA C:2012 guidelines being applied to it.
- Safety compliance: FuSa RTX code has gone through stringent safety analysis and rigorous testing. It is approved for use in applications with the most demanding safety integrity levels (SIL). See FuSa RTS for the list of applicable safety standards.
DESIGNED FOR ENGINEERING EFFICIENCY
- Small memory footprint: requires minimum amount of system memory, starting from 5 KB ROM
- Low-power mode: has tick-less operation mode for low power devices
EASY TO CONFIGURE AND USE
- CMSIS-pack support: FuSa RTX is provided as a CMSIS component and can be easily managed in a µVision Run-Time Environment dialog.
- Configuration Wizard support: FuSa RTX provides a number of configuration parameters for the kernel operation as well as for the RTX objects such as threads, mutex and semaphores. Integrated support of MDK Configuration Wizard makes the parameter settings clear and intuitive.
SAFE OPERATION
- Separate stacks for ISR/RTOS and threads: the RTOS kernel executes in handler mode with stack separated from user threads which avoids unexpected stack loads.
- Stack overflow checking: RTX implements a software stack overflow checking that traps stack overruns.
- Runtime check of kernel objects: object identifiers are validated at run-time for type-mismatches and are protected from inadvertently accesses by the user application.
RELIABLE EXECUTION
- Time-deterministic interrupt execution: RTX utilizes the LDEX/STEX instruction available on most Cortex-M processors and therefore user interrupts are never disabled
FLEXIBLE MEMORY MANAGEMENT
-
Object-specific memory pools: dedicated fixed-size memory blocks for each object type avoids memory fragmentation during run-time and makes object creation and destruction time deterministic.
- Static object memory allocation: the user application may rely on static memory for kernel objects, which guarantees that the RTOS system can never run out of storage during run-time.
RTOS-AWARE DEBUGGING
- Event Recorder support: all important internal FuSa RTX events can be logged and analyzed using MDK Event Recorder and System Analyzer. Alternatively 3rd party tools such as Percepio's Tracelyzer can be used as well.
-
Stack Usage Watermark: special provisions in FuSa RTS allow MDK debugger to determine during run-time the current and the maximum stack usage for each thread.
-
Object Memory Usage Counters: built-in mechanism that helps to analyze the maximum memory usage for each RTX object type.