In embedded real-time systems, interrupts are the core mechanism for the system to respond to external events. Whether it is sensor signals, peripheral inputs, or timer triggers, interrupts are necessary to ensure that the system can react in a very short time. Therefore, the quality of the interrupt handling mechanism directly affects the performance of real-time operating systems.
This article analyzes the interrupt mechanisms and latency performance of RTLinux and VxWorks based on experimental data, exploring their differences in real-time performance and providing optimization suggestions.
π Key Conclusions Overview
- β’ VxWorks ISR runs outside of task context β avoids task switching, resulting in low latency.
- β’ RTLinux uses a soft interrupt mechanism β flexible and customizable, but with higher latency.
- β’ On the same hardware platform, the interrupt latency of VxWorks is about 35% lower than that of RTLinux.
- β’ RTLinux can significantly improve real-time performance by shortening interrupt disable time and optimizing scheduling.
Why Compare RTLinux and VxWorks?
- β’ VxWorks β a mature commercial RTOS with excellent real-time performance, commonly used in aerospace, military, and medical devices.
- β’ RTLinux β an open-source system that adds a real-time kernel to Linux, low-cost, highly customizable, suitable for R&D and industrial automation.
For projects that require a balance between performance and cost, understanding the differences in interrupt mechanisms between the two can help make more reasonable system selections.
Interrupt Handling Mechanism of VxWorks
The design goal of VxWorks in interrupt handling is to minimize latency.
- 1. Execution Environment ISR (Interrupt Service Routine) runs in an independent context, avoiding task switching β reducing latency.
- 2. Unified Interrupt Stack All ISRs share a pre-allocated interrupt stack, avoiding frequent memory allocation.
- 3. ISR Restrictions
- β’ Cannot call functions that may block (e.g., acquiring semaphores).
- β’ Can send semaphores, messages, or events to tasks, but cannot wait for reception.
<span>intConnect()</span> and implements fast dispatch with the BSP interrupt controller driver.Interrupt Handling Mechanism of RTLinux
RTLinux adopts the method of running the Linux kernel under a real-time kernel, treating Linux as a regular task.
- 1. Soft Interrupt Concept
- β’ Simulates hardware interrupt control with software variables, separating real-time interrupts from non-real-time interrupts.
- β’ Real-time tasks take precedence over Linux kernel processing.
- β’ Modifies
<span>cli</span>(disable interrupts) and<span>sti</span>(enable interrupts) macros to prevent Linux from masking real-time interrupts.
Comparison of Interrupt Handling Processes

Experimental Comparison: Interrupt Latency
- β’ Hardware Platform: Samsung S3C2440A (ARM920T core, 500 MHz)
- β’ Method:
- β’ Timer interrupt interval: 2 microseconds
- β’ Mask other interrupts
- β’ Use an oscilloscope to measure the time difference from trigger to ISR execution
| System | Interrupt Latency (Average) | Latency Difference |
|---|---|---|
| VxWorks | Lower | Baseline |
| RTLinux | Higher by about 35% | +35% |
π Visual Comparison:

Conclusion: VxWorks has significantly better interrupt latency than RTLinux on the same platform.
Practical Application Scenarios
- β’ VxWorks
- β’ Spacecraft attitude control
- β’ Missile guidance systems
- β’ High-end medical devices
- β’ RTLinux
- β’ Industrial automation production lines
- β’ Robot motion control
- β’ Research-oriented real-time data acquisition
Optimization Suggestions for RTLinux
β Shorten Interrupt Disable Time Execute only necessary logic in ISR, handling the rest in tasks.
β Reduce Interrupt Dispatch Time (IDT) Optimize the interrupt vector lookup and dispatch process.
β Optimize Scheduling Algorithms Adjust priorities based on task importance to reduce kernel preemption time (KVT).
β Comprehensive Optimization Optimize both system and application layers based on application characteristics.
Summary
- β’ VxWorks β Low latency, stable performance, suitable for scenarios with extremely high real-time requirements.
- β’ RTLinux β Flexible, open-source, low-cost customization, can meet most real-time needs through optimization.
- β’ Future improvements can draw on VxWorks’ “ISR quick return + task completion follow-up work” model to enhance RTLinux’s interrupt performance.
π References
- 1. VxWorks Programmerβs Guide 5.4, Wind River Systems, 1999.
- 2. Programming Environments Manual for 32-bit PowerPC Architecture, Motorola Inc., 2001.
- 3. Ma Wenjun, Zhao Fengyu. Comparison and Analysis of Interrupt Mechanisms in RTLinux and VxWorks, Microcomputer Information, 2011.
Click “Read Original” to access more VxWorks articles!