What Is a Real-TimeOperating System (RTOS)?
What Is a Real-TimeOperating System (RTOS)?

What Is a Real-Time
Operating System (RTOS)?

The guide to choosing an RTOS for your next embedded system project.

What Is a Real-Time Operating System (RTOS)?

A real-time operating system (RTOS) is an operating system with two key features: predictability and determinism. In an RTOS, repeated tasks are performed within a tight time boundary; in a general-purpose operating system, this is not necessarily so. Predictability and determinism, in this case, go hand in hand. We know how long a task takes, and that it always produces the same result. 

RTOSes are subdivided into “soft” real-time and “hard” real-time systems. Soft real-time systems perform operations within a few hundred milliseconds, at the scale of a human reaction. Hard real-time systems operate at the scale of microseconds and they must respond with extreme consistency.


Real-Time System Characteristics

Determinism

Repeating an input results in the same output.

High performance

RTOS systems are fast and responsive, often executing actions within a small fraction of the time needed by a general OS.

Safety and security

RTOSes are frequently used in critical systems where failures can have catastrophic consequences, such as robotics or flight controllers. To protect those around them, they require higher security standards and more reliable safety features.

Priority-based scheduling

Priority scheduling means that actions assigned a high priority are executed first, and those with lower priority come after. An RTOS always executes the most important task.

Small footprint

RTOSes weigh in at just a fraction of the size of their hefty general OS counterparts,. For example, Windows 10, with post-installation setup, takes up approximately 20 GB of storage. VxWorks®, on the other hand, is approximately 20,000 times smaller, measured in the low single-digit megabytes.

Interrupt handling

An RTOS quickly and efficiently responds to hardware or software interrupts. This minimizes interrupt latency — the time between an event occurring and the system responding — to ensure time-critical task completion across aerospace, medical, and industrial applications

Task synchronization

An RTOS provides inter-task communication mechanisms such as semaphores and message queues, so tasks can safely share resources without data corruption or race conditions.

Memory management

An RTOS isolates each task’s memory space. Doing so prevents tasks from corrupting one another’s data and improves system stability. These are critical in safety-certified deployments.

Types of Real-Time Operating Systems

It s important to distinguish between RTOS types.

Image
hard-rtos-icon

Hard Real-Time Operating Systems

Hard real time systems must meet every deadline without exception. Missing a deadline is considered a system failure. Hard RTOSes are used in applications where timing errors can cause physical harm or mission failure, such as aircraft flight control, automotive airbag systems, and cardiac pacemakers.

Image
firm-rtos-icon

Firm Real-Time Operating Systems

Firm real time systems must typically meet their deadlines, but an occasional miss does not cause catastrophic failure. It simply renders that particular output useless. The system continues to function correctly otherwise. Examples include multimedia playback, some industrial automation systems, and network communication buffers.

Image
soft-rtos-icon

Soft Real-Time Operating Systems

Soft real time systems prioritize timely execution, but missing a deadline does not have critical consequences. In these cases, performance degrades but the system continues to operate. Examples include desktop operating systems, web servers, and audio/video streaming applications.

The Evolution of Real-Time Operating Systems

Real-time operating systems have evolved over six decades, moving from niche military applications to the backbone of the modern intelligent edge.
1960s–1970s: Origins in aerospace and defense

1960s–1970s: Origins in aerospace and defense

Traditional operating systems could not meet the strict timing requirements for radar, flight control, and weapons systems. Early RTOS efforts introduced preemptive scheduling and interrupt handling to guarantee deterministic responses to external events.

1980s–1990s: Commercial expansion

1980s–1990s: Commercial expansion

Products such as VxWorks and QNX brought RTOS capabilities to the broader market, with adoption in telecommunications, automotive, and industrial control. Standardization efforts such as POSIX real time extensions helped unify RTOS design across vendors.

2000s: The IoT era

2000s: The IoT era

The rapid growth of connected embedded devices in the Internet of Things (IoT) drove demand for smaller, lower power RTOS options. Open source platforms such as FreeRTOS gained wide adoption for microcontroller and IoT applications.

Today: AI and intelligent edge

Today: AI and intelligent edge

RTOS platforms are incorporating artificial intelligence and machine learning to enable adaptive task scheduling, predictive failure detection, and real time sensor fusion at the intelligent edge.

Why Use an RTOS?

An RTOS offers structured engineering benefits that compound as system complexity grows

Priority-based scheduling

The ability to separate time critical processing from non critical work is one of the most powerful tools in embedded development. The RTOS guarantees that the most important task always runs first.

Abstracting timing information

The RTOS manages all timing and provides standard API functions, resulting in cleaner, smaller application code with fewer timing-related bugs.

Maintainability and extensibility

Task-based design reduces interdependencies among software modules, which makes systems significantly easier to update, extend, and maintain.

Modularity

Each task has a clearly defined role, which naturally encourages modular software architecture and cleaner separation of concerns.

Team development

The task based model allows separate engineering teams to develop and test their components in parallel, which may accelerate project timelines.

Easier testing

Modular, task-based development enables isolated unit testing, which reduces integration risk.

Code reuse

Tasks developed and validated for one platform can be reused on future projects on similar hardware. Doing so may reduce development costs and improve code quality.

Improved efficiency

A well-designed RTOS is fully event-driven. No CPU cycles are wasted polling for events do not occur.

Idle processing

Background tasks such as CPU load measurement and CRC checks run in the idle thread without affecting primary task timing.

RTOS Architectures

Learn the difference between these types of systems.

Image
mikrokernel-icon

Microkernel Systems

In microkernel architecture, components are stored in separate “rooms,” which are independent from one another but share a similar space. As in real life, a room can be renovated without impacting the others around it. However, to get from one room to another, you must step through the doorway and head down the hall, which wastes time. Any action has to return to the kernel before it can move to the component it references, meaning some operations take much longer than necessary.

Image
monolithic-icon

Monolithic Systems

In a monolithic system, there are no “walls” between the rooms, so you can step from one to another much more quickly. Rather than implementing a small kernel, monolithic kernels provide services of their own as well as regulating those of other areas. With exceptions, operations are executed in the kernel space, removing the recurrent need to return to the kernel and improving speed and performance. However, making a change in one area could have ramifications for the entire system.

Real-Time System Examples

RTOSes can be found in countless products around the world, with VxWorks alone powering more than two billion devices. Systems from car engines to deep-space telescopes to helicopter guidance systems to the Mars rovers use embedded systems that run a real-time operating system.

A&DTelecomTransportationMedicalManufacturing
  • Flight display controller
  • Engine turbine
  • Drones
  • Extraterrestrial rovers
  • 5G modem
  • Satellite modem
  • Base station
  • Functional safety systems
  • Emergency braking systems
  • Engine warning systems
  • Magnetic resonance imaging
  • Surgery equipment
  • Ventilators
  • Factory robotics systems
  • Safety systems
  • Oil and gas vibration monitors

Factors for Choosing a Commercial RTOS

Beyond in-house RTOS options, developers can choose open source or community-based operating systems. While these provide some RTOS benefits, they fall short in other key areas. Larger deployments often use boards costing hundreds, thousands, or even millions of dollars, which means developers are investing heavily in hardware. Problems encountered while implementing an open source system could quickly push deadlines and stretch budgets. Open source systems also lack organized backing, which can result in missing documentation or unresolved glitches. A commercial system, on the other hand, benefits from an organized, professional engineering team that helps solve issues or provide explanations.


Need for Safety Certification

If a product needs safety certification, it is easier, faster, and cost-effective to leverage a commercial RTOS. In a safety certification evaluation, the commercial RTOS provides certification evidence pages or safety profiles for the specific certification the business requires.

Hardware Support

Commercial RTOSes have an extensive range of board support packages (BSPs) to assist with board bring-up and design. These software kits make it quick and easy to use an RTOS with specific types of hardware. Wind River offers the most extensive range of BSPs in the embedded software industry. Each package is tested and validated for seamless interoperability to help accelerate the design and development process.

Interrupt Latency and Responsiveness

Interrupt latency and context switch time are two critical technical metrics in evaluating an RTOS for time-sensitive applications. Benchmark these metrics against the application’s specific timing requirements. Do so under ideal conditions, and then also under maximum system load. An RTOS that cannot guarantee consistent latency across all operating conditions cannot reliably guarantee deadlines. VxWorks provides industry-leading deterministic latency, making it the choice for demanding aerospace, industrial, and defense deployments.

Compatibility and Support for Newer Versions

Long-term performance, security, and feature support are additional factors in selecting a commercial RTOS. Among the areas to investigate include preserved API compatibility and POSIX® compliance. Learning how much the core OS kernel is expected to change can help predict how much effort is required to upgrade or roll back versions. Don’t forget migration considerations around networking and BSPs. It is critical that the chosen option has the documentation and expert support necessary for success.

How Can Wind River Help?


Real-Time Operating Systems: FAQs

Common features of an RTOS include task scheduling, interrupt handling, inter-task communication and synchronization, memory management, and device driver management. An RTOS must provide deterministic and predictable behavior to ensure that tasks can complete within their deadlines.

 

 

An RTOS, or real-time operating system, is a specialized software system designed to manage and prioritize tasks in real-time systems, where tasks have strict timing constraints. It differs from traditional OSes in that it can guarantee timely response to events and tasks, making it suitable for mission-critical applications. 

RTOSes are used in a wide variety of applications that have strict timing requirements, such as medical devices, industrial control systems, aerospace and defense systems, automotive electronics, and consumer electronics. It’s also commonly used in embedded systems, where reliability, safety, and performance are critical. 

Task scheduling in an RTOS is typically priority-based, where tasks are assigned priorities based on their urgency and importance. The scheduler uses a preemptive algorithm to select the highest-priority task that’s ready to run, ensuring that critical tasks can be executed on time. 

Advantages of using an RTOS include predictable and deterministic behavior, which ensures that critical tasks are completed on time. It also provides better resource management, improved responsiveness, and reduced system overhead, resulting in better system performance.

Challenges associated with using an RTOS include the need for specialized expertise and experience to configure and optimize the system. The real-time behavior also adds complexity to the development process, and the system must be designed to handle unexpected events and errors to ensure that it remains reliable and safe. Additionally, the cost of an RTOS can be higher than that of a traditional operating system. 

There is no “best” RTOS. Like any other operating system, each RTOS varies in its strengths and weaknesses, and its use will determine the most appropriate choice. 

Unfortunately, few universities offer courses that cover the field of embedded engineering. Online resources and free SDKs (such as the VxWorks SDK) can be helpful tools for practicing implementation. In addition, Wind River offers courses that address intelligent systems challenges, which can increase individual human capital or help entire teams achieve their goals faster and more easily. 

An RTOS processes data as it comes in, without needing to buffer or refresh applications. This supports faster, more accurate responses in systems with changing input environments. To accomplish this, the kernel is designed to be small and nonintrusive, and it stays out of the way of the operating system’s functions. 

The kernel operates much like the conductor in a symphony. It controls and regulates the other functions, without working itself or getting in the way. However, in an RTOS, when no operation is executed, the kernel does nothing at all. 

Task priority varies, but many RTOSes use a priority-based preemptive scheduling system, which executes the highest-priority items first. Other options include rate monotonic scheduling or Earliest Deadline First scheduling. 

In the emerging field of 5G technology, RTOSes have made an impact due to their low-latency responses and their ability to take advantage of faster communications. RTOSes can also be found in devices that rely on machine learning, because the real-time stream of data can be operated upon as it comes in. 

Wind River launched ROS2 for VxWorks in December 2019, which enables the use of the Robot Operating System in VxWorks builds. 

Common examples include VxWorks (aerospace, defense, and industrial), QNX (automotive and medical), FreeRTOS (IoT and microcontrollers), and Zephyr (resource-constrained connected devices). VxWorks, developed by Wind River, is one of the most widely deployed commercial RTOS platforms, powering more than two billion devices across some of the most demanding real-time applications ever built. 

A general-purpose OS (such as Windows or Linux) prioritizes multitasking and throughput using non-deterministic scheduling — tasks are completed as resources allow, with no timing guarantees. A real-time operating system guarantees that critical tasks execute within a defined, predictable time boundary, even under load. This determinism is what makes an RTOS essential in safety-critical environments where a missed deadline can have severe consequences. 

An RTOS manages hardware resources — CPU, memory, and I/O — and schedules software tasks so that time-critical operations are always completed on time. It uses priority-based preemptive scheduling to ensure the most important task always runs first, handles hardware interrupts with minimal and predictable latency, and provides mechanisms for tasks to safely share resources without data corruption. 

Hard RTOS: missing a deadline results in catastrophic system failure. Used in aircraft flight control, automotive braking systems, and medical pacemakers. Firm RTOS: missing a deadline renders that output useless but does not cause system failure. Used in multimedia playback and certain industrial automation systems. Soft RTOS: missing a deadline degrades performance, but the system continues to function. Used in desktop operating systems, web servers, and audio/video streaming. 

"RT" stands for "real-time." A real-time operating system is designed to process inputs and produce outputs within strict, deterministic time constraints. Unlike a general-purpose OS, which prioritizes overall efficiency without timing guarantees, an RT OS ensures that specific tasks are always completed within a defined deadline — regardless of system load. 

A hard real-time operating system guarantees that all critical tasks are completed within their defined deadlines without exception. Missing a deadline is treated as a system failure. Hard RTOS platforms are used in applications where timing errors can cause physical harm or mission failure — including aircraft flight control, automotive airbag deployment systems, industrial safety controllers, and cardiac pacemakers.