Overview of RTOSs
RTOSs were created as embedded devices matured to simplify software development—like OS-based software—while retaining the reliability and deterministic behavior of bare-metal software. The more sophisticated microcontroller-based products with their variety of peripherals benefit from the multitasking, deterministic behavior and services of an RTOS. RTOSs come with a scheduler that makes it easier to manage a large variety of tasks. The main difference between an OS and an RTOS is that an RTOS responds to external events in deterministic and minimal time—hence the name real time. Middleware stacks are often available with RTOSs and can be easily integrated.
There is a wide variety of RTOSs available in the ecosystem for Arm Cortex-M-based devices. Some of these are available for free and are open sourced, while others are available at cost for commercial use and often packaged with an integrated development environment (IDE) from the vendor...