Keil Logo

RTX RTOS for safety-critical applications

Learning Platform

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.

 

FuSa RTX RTOS

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.
RTX_Config_Wizard

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

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.

 

Flexible memory management

  • Object-specific memory poolsdedicated 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

  • 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.

Component Viewer and Event Recorder
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.