In computer science, real-time computing (RTC), or reactive computing, is the study of hardware and software systems that are subject to a “real-time constraint”, for example operational deadlines from event to system response. Real-time programs must guarantee response within strict time constraints, often referred to as “deadlines”. Real-time responses are often understood to be in the order of milliseconds, and sometimes microseconds. Conversely, a system without real-time facilities, cannot guarantee a response within any timeframe (regardless of actual or expected response times). A real-time system is one which “controls an environment by receiving data, processing them, and returning the results sufficiently quickly to affect the environment at that time.” This usage of “real-time” should not be confused with the two other legitimate uses of the term: in simulation the term means that the simulation’s clock runs as fast as a real clock, while in processing and enterprise systems the term is used to mean “without perceivable delay”. Real-time software may use one or more of the following: synchronous programming languages, real-time operating systems, and real-time networks, each of which provide essential frameworks on which to build a real-time software application. A real-time system may be one where its application can be considered (within context) to be mission critical. The anti-lock brakes on a car are a simple example of a real-time computing system: the real-time constraint in this system is the time in which the brakes must be released to prevent the wheel from locking. Real-time computations can be said to have failed if they are not completed before their deadline, where their deadline is relative to an event. A real-time deadline must be met, regardless of system load.