We use cookies to make your experience better. To comply with the new e-Privacy directive, we need to ask for your consent to set the cookies. Learn more.
Modern microcontroller applications frequently have to serve several concurrent activities. RTX manages the switching between the activities. Each activity gets a separate thread which executes a specific task and to simplify the program structure. Keil RTX5 is scalable and additional threads can be added easily at a later time. Threads have a priority allowing faster execution of time-critical parts of a user application.
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.
Open-source: Free-to-use commercial-grade RTOS.
Keil RTX5 (including source code) is shipped with Arm Keil MDK. This full-featured, commercial-grade RTOS is fully configurable and has no restrictions. It is shipped under the permissive Apache 2.0 license and is fully developed on GitHub.
Easy to Use - Reduced learning curve, faster product development.
Keil RTX5 is well supported within the µVision IDE/Debugger, which features RTX5 aware tools enabling you to quickly debug your RTX5 applications.
Safe and Secure - Reliable and secure operation.
- Keil RTX5 is PSA certified and naturally integrates with Platform Security Architecture API.
- There is a safety-certified variant of Keil RTX5 available as part of Arm Run-Time System for functional safety applications (FuSa RTS).
Flexible Scheduling - 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.
Migration Paths
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.
Tecnologix offers support which is directly handled by development team. Do not hesitate to get in touch with our experts.
Just ask here