CMSIS-RTOS RTX offers services needed in many real-time applications, such as periodical activation of timer functions, memory management, and message exchange between threads with time limits.
What's new in CMSIS-RTOS v2 and Keil RTX v5?
The new CMSIS-RTOS API v2 addresses new requirements such as dynamic object creation, support for ARMv8-M, and full support of C++ run-time environments. This webinar recording compares the CMSIS-RTOS API versions and shows how to utilize the new features in Keil RTX5, the first real-time operating system that implements the new API as its native RTOS interface for ARM Cortex-M processor-based devices.
- Choose the best scheduling for your application.
Keil RTX5 offers various kernel scheduling options, allowing you to use the best suited one in your application.
- Pre-emptive - each thread has a different priority and will run until a higher priority thread is ready to run. This is commonly used in interactive systems where a device may be in standby or background mode until some input is sent to it.
- Round-Robin - each thread will run for a fixed period of CPU run-time (time slice). Data loggers/system monitors typically employ round-robin scheduling, to sample all sensors or data-sources in turn with no prioritization.
- Co-operative - each thread will run until it is told to pass control to another thread or reaches a blocking OS call. Co-operative multi-tasking can be seen in applications that require a fixed order of execution.
Deterministic Behavior - Known behavior for time critical tasks.
Keil RTX5 delivers fully deterministic behavior meaning that events and interrupts are handled within a predefined time (deadline). Your application can rely on consistent and known process timings.
Designed for Embedded Systems - Uses the minimum amount of system memory.
Keil RTX5 is specifically written for applications running on ARM Cortex-M based MCUs. It runs quickly and requires only minimal MCU resources with a memory footprint as small as 5KB (ROM).
Source Code - Useful for certification.
Keil RTX5 is publicly developed on GitHub. The source code is included in all MDK editions. Use it if your product requires certification.
Keil RTX5 is a new implementation that natively supports the CMSIS-RTOS v2 API. Using a compatibility layer provides CMSIS-RTOS v1 API compliance. You can even intermix both API layers in the same project.