RTX Real-Time Operating System

The Keil RTX is a royalty-free, deterministic Real-Time Operating System designed for ARM and Cortex-M devices. It allows you to create programs that simultaneously perform multiple functions and helps to create applications which are better structured and more easily maintained.

While it is certainly possible to create real-time programs without an RTOS (by executing one or more functions in a Super-loop), there are numerous scheduling, maintenance, and timing issues that an RTOS like the Keil RTX solves for you. For a more detailed comparison between RTOS and Super-loop, take a look at the advantages of using an RTOS.

Benefits

The Keil RTX Real-Time Operating System offers many advanced features which are not always available in RTOS products from other vendors. When you are choosing an RTOS you should take into consideration some of the following points:

RTX is included in MDK-ARM - The full featured, commercial level RTX (including Source Code) is provided as part of the Keil MDK-ARM development tools. This is not an evaluation version. It is fully configurable, and has no restrictions. Therefore, if you plan to use MDK for your development, RTX is free of charge.

RTX is Royalty-Free - RTX is supplied Royalty-Free. Once licensed you can ship products created using RTX with no further fees or on-going costs.

Market Leading RTOS - RTX is consistently shown to be one of the leading RTOS used in embedded applications (TechInsights Embedded Market Study 2010). You can be confident using RTX in your application.

Flexible Scheduling - RTX offers three different kernel scheduling options, allowing you to use the one most suited to your application:

Pre-emptive - each task has a different priority and will run until a higher priority task is ready to run. This is commonly used in interactive systems where a device may be in standby or background mode until some input from a user.

Round-Robin - each task will run for a fixed period of CPU run-time (time slice). Data loggers/system monitors typically employ round-robin scheduling, all sensors or data-sources are sampled in turn with no prioritization.

Co-operative - each task will run until it is told to pass control to another task or reaches a blocking OS call. Co-operative multi-tasking can be seen in applications that require a fixed order of execution.

Deterministic Behavior - Not every RTOS is deterministic. RTX delivers fully deterministic behaviour 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 - RTX is specifically written for embedded systems based on ARM and Cortex-M MCUs. It has not been adapted from a larger operating system or from another architecture. It runs quickly and takes the minimum of MCU resources with a memory footprint as small as 5KB (ROM).

Easy to Use - Short learning cycle, faster product development. RTX is well supported within the µVision IDE/Debugger, which features RTX task aware tools to enable you to quickly and easily configure and debug RTX in your applications.

Source Code - RTX source code is included in all MDK-ARM Editions. This can be useful where source code is needed for product certification.

RTOS Advantages

Simple embedded systems typically use a Super-Loop concept where the application executes each function in a fixed order. Interrupt Service Routines (ISR) are used for time-critical program portions. This approach is well suited for small systems but has limitations for more complex applications.

Disadvantages of the Super-Loop Concept

Time-critical operations must be processed within interrupts (ISR)

ISR functions become complex and require long execution times

ISR nesting may create unpredictable execution time and stack requirements

Cookies

Cookie settings

We may collect and store information about your visit to our web site automatically using browser cookies (files which are sent by us to your computer) or similar devices which we can access when you visit our web site in future.
Please read our Cookie Policy to find out more about the cookies we use.

You can control the cookies set by this website by using the slider below, and by saving your settings.
These settings only apply to the ARM Website you are currently visiting and any changes you make will not apply to any other ARM websites.

We cannot turn off cookies which fall under the strictly necessary category, as these are essential in order to enable you to move around the website and use its features.
Please read our Cookie Policy to find out how to control these using your browser settings.

Third parties may also use cookies over which we have no control.
These cookies are likely to be performance cookies or targeting cookies.
Please read our Cookie Policy to find out how to control these using your browser settings.