HOME

TheInfoList



OR:

RTX is a line of
real-time operating system A real-time operating system (RTOS) is an operating system (OS) for real-time applications that processes data and events that have critically defined time constraints. An RTOS is distinct from a time-sharing operating system, such as Unix, which ...
(RTOS) extensions by the firm IntervalZero. They are a software extension or
abstraction layer In computing, an abstraction layer or abstraction level is a way of hiding the working details of a subsystem. Examples of software models that use layers of abstraction include the OSI model for network protocols, OpenGL, and other graphics libra ...
that converts Microsoft Windows
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
into a RTOS. It was the first Windows real-time solution on the market.


Overview

RTX real-time software extensions to Windows combines the familiar user experience of Microsoft Windows (rich GUI, extant drivers and software, ...) and the direct control of embedded hardware by providing hard real-time determinism and
symmetric multiprocessing Symmetric multiprocessing or shared-memory multiprocessing (SMP) involves a multiprocessor computer hardware and software architecture where two or more identical processors are connected to a single, shared main memory, have full access to all ...
(SMP) abilities. The RTX extensions have followed the Windows architecture since Windows NT 3.5. Generally, RTX supports
32-bit In computer architecture, 32-bit computing refers to computer systems with a processor, memory, and other major system components that operate on data in 32- bit units. Compared to smaller bit widths, 32-bit computers can perform large calcula ...
Windows; RTX64 supports
64-bit In computer architecture, 64-bit integers, memory addresses, or other data units are those that are 64 bits wide. Also, 64-bit CPUs and ALUs are those that are based on processor registers, address buses, or data buses of that size. A comp ...
Windows. As of 2015, RTX2016 supports 32-bits, RTX64 4.x supports 64-bits. The systems are used in different markets such as industrial
automation Automation describes a wide range of technologies that reduce human intervention in processes, namely by predetermining decision criteria, subprocess relationships, and related actions, as well as embodying those predeterminations in machines ...
,
testbed A testbed (also spelled test bed) is a platform for conducting rigorous, transparent, and replicable testing of scientific theories, computational tools, and new technologies. The term is used across many disciplines to describe experimental rese ...
and
simulation A simulation is the imitation of the operation of a real-world process or system over time. Simulations require the use of models; the model represents the key characteristics or behaviors of the selected system or process, whereas the ...
, digital audio, digital video,
aerospace Aerospace is a term used to collectively refer to the atmosphere and outer space. Aerospace activity is very diverse, with a multitude of commercial, industrial and military applications. Aerospace engineering consists of aeronautics and astrona ...
military A military, also known collectively as armed forces, is a heavily armed, highly organized force primarily intended for warfare. It is typically authorized and maintained by a sovereign state, with its members identifiable by their distin ...
,
medical device A medical device is any device intended to be used for medical purposes. Significant potential for hazards are inherent when using a device for medical purposes and thus medical devices must be proved safe and effective with reasonable assur ...
s,
electrical grid An electrical grid is an interconnected network for electricity delivery from producers to consumers. Electrical grids vary in size and can cover whole countries or continents. It consists of:Kaplan, S. M. (2009). Smart Grid. Electrical Power ...
,
electricity generation Electricity generation is the process of generating electric power from sources of primary energy. For utilities in the electric power industry, it is the stage prior to its delivery ( transmission, distribution, etc.) to end users or its stor ...
, and other uses.


Technical details

* Hardware abstraction layer extensionRTX relies on a Windows hardware abstraction layer (HAL) extension to initialize the RTX-dedicated
processors A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, an ...
and to provide the real-time subsystem (RTSS) with high resolution timers (up to 1 microsecond). It also provides an
interrupt In digital computers, an interrupt (sometimes referred to as a trap) is a request for the processor to ''interrupt'' currently executing code (when permitted), so that the event can be processed in a timely manner. If the request is accepted ...
isolation mechanism. * Symmetric multiprocessingLike Windows, RTX is based on a
symmetric multiprocessing Symmetric multiprocessing or shared-memory multiprocessing (SMP) involves a multiprocessor computer hardware and software architecture where two or more identical processors are connected to a single, shared main memory, have full access to all ...
(SMP) architecture.RTX on multi-core-based Intel processors
/ref> Depending on the real-time needs, users can choose the number of processors to dedicate to RTX 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 dedicated processors. * Interrupt managementRTX supports both line based and
Message Signaled Interrupts Message Signalled Interrupts (MSI) are an alternative in-band method of signalling an interrupt, using special in-band messages to replace traditional out-of-band assertion of dedicated interrupt lines. While more complex to implement in a devic ...
(MSI/MSI-X). Interrupt service thread (IST) latencies are under 10 microseconds. * Memory managementThe deterministic memory pool allocated for RTX 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 Random-access memory (RAM; ) is a form of computer memory that can be read and changed in any order, typically used to store working data and machine code. A random-access memory device allows data items to be read or written in almost t ...
(RAM) depending on the configuration; for 64-bit, 75% up to a maximum of 128 GB. * SchedulingOne 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 switch In computing, a context switch is the process of storing the state of a process or thread, so that it can be restored and resume execution at a later point, and then restoring a different, previously saved, state. This allows multiple processes ...
es. Priority promotion mechanisms are provided to avoid
priority inversion In computer science, priority inversion is a scenario in scheduling in which a high priority task is indirectly superseded by a lower priority task effectively inverting the assigned priorities of the tasks. This violates the priority model that h ...
. Yields to threads of higher priority occur with sub-microsecond timing. * Windows interactionRTX 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 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 In computer science, shared memory is memory that may be simultaneously accessed by multiple programs with an intent to provide communication among them or avoid redundant copies. Shared memory is an efficient means of passing data between progr ...
or
socket Socket may refer to: Mechanics * Socket wrench, a type of wrench that uses separate, removable sockets to fit different sizes of nuts and bolts * Socket head screw, a screw (or bolt) with a cylindrical head containing a socket into which the hexa ...
communication. * Real time application developmentRTX application development is done from
Microsoft Visual Studio Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including web site, websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platfor ...
in C or C++ using a windows-like application programming interface (API). RTX executable are ''.rtss'' and DLLs are ''.rtdll''. * Network communicationThe RTX real-time
TCP/IP The Internet protocol suite, commonly known as TCP/IP, is a framework for organizing the set of communication protocols used in the Internet and similar computer networks according to functional criteria. The foundational protocols in the suit ...
stack (RT-TCP/IP) supports TCP, UDP, and IP for
IPv4 Internet Protocol version 4 (IPv4) is the fourth version of the Internet Protocol (IP). It is one of the core protocols of standards-based internetworking methods in the Internet and other packet-switched networks. IPv4 was the first version d ...
and
IPv6 Internet Protocol version 6 (IPv6) is the most recent version of the Internet Protocol (IP), the communications protocol that provides an identification and location system for computers on networks and routes traffic across the Internet. I ...
. RTX drivers for standard
network interface controller A network interface controller (NIC, also known as a network interface card, network adapter, LAN adapter or physical network interface, and by similar terms) is a computer hardware component that connects a computer to a computer network. E ...
s (NICs) are provided with the stack.


References


External links

* {{Official website, https://www.intervalzero.com Real-time operating systems Embedded operating systems