RTX, RTX64
DeveloperIntervalZero
OS familyReal-time operating system
Initial release1995 (1995)
Latest releaseRTX 2016 (32-bit)
RTX64 4.x (64-bit)
Platformsx86, x86-64
LicenseProprietary
Official websitewww.intervalzero.com

RTX / RTX64 are real-time operating system (RTOS) by the firm IntervalZero. They are software extensions that convert Microsoft Windows operating system into a RTOS.[1] It was the first Windows real-time solution on the market.[2]

Overview

RTX and RTX64 real-time software extensions to Windows combine the familiar user experience of Microsoft Windows (rich GUI, available drivers and software, ...) and the direct control of embedded hardware by providing hard real-time determinism and symmetric multiprocessing (SMP) abilities.[3][4]

The RTX / RTX64 extensions have followed the Windows architecture since Windows NT 3.5.[5] Generally, RTX supports 32-bit Windows; RTX64 supports 64-bit Windows.[6]

The systems are used in different markets such as industrial automation, testbed and simulation, digital audio, digital video, aerospace military, medical devices, electrical grid, electricity generation, and other uses.

Technical details

  • Hardware abstraction layer extension  RTX / RTX64 relies on a Windows hardware abstraction layer (HAL) extension to initialize the RTX-dedicated processors and to provide the real-time subsystem (RTSS) with high resolution timers (up to 1 microsecond). It also provides an interrupt isolation mechanism.
  • Symmetric multiprocessing  Like Windows, RTX / RTX64 is based on a symmetric multiprocessing (SMP) architecture.[7] Depending on the real-time needs, users can choose the number of processors to dedicate to RTX / RTX64 to run real-time processes. RTX can use up to 31 dedicated processors; RTX64 can use up to 63. Users can then scale real-time applications between the RTX / RTX64 dedicated processors.
  • Memory management  The deterministic memory pool allocated for RTX / RTX64 is taken from the system non-paged pool memory. For example, under Windows 7, the amount of non-paged pool is: for 32-bit, 1 GB to 2 GB of the random-access memory (RAM) depending on the configuration; for 64-bit, 75% up to a maximum of 128 GB.
  • Scheduling  One scheduler is used across all real-time processors (SMP architecture). It uses priority-driven (128 real-time priorities) and pre-emptive algorithms to ensure critical thread context switches. Priority promotion mechanisms are provided to avoid priority inversion. Yields to threads of higher priority occur with sub-microsecond timing.
  • Windows interaction  RTX / RTX64 provides separation from Windows. Windows processes cannot interfere with real-time applications. If Windows issues a STOP message or shutdown, real-time applications have the ability to continue running to shutdown safely. Communicating with Windows occurs via RTX / RTX64 providing common inter-process communication (IPC) mechanisms between real-time processes and Windows processes (user processes or kernel drivers). Synchronizing is done via events, mutexes and semaphores; data sharing via shared memory or socket communication.

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.