Real time means to occur immediately. It is the actual time during which something takes place. This term is typically used as an adjective to describe a level of computer responsiveness that is immediate in a human sense of time. Since execution follows the command, true real time is unachievable, since the delay is still there even if it is microseconds. Near real time is a commonly used term used to express this. Real-time programs must guarantee response within specific time constraints known as deadlines. Examples of real time systems include:
- Operating systems: A real time system that responds to input immediately. It serves real time applications that process data as it comes in without buffer delays.
- Multiplayer video games: All players can play a video game simultaneously. When a player performs an action, other players are made aware of the consequences of the action within an operational deadline.
- Software: Real time software performs assigned duties and functions as soon as they are assigned, not after the program has been executed. The user considers the performance immediate.
- Graphics animation: a real-time program would display objects moving across the screen at the same speed that they would actually move.
Types of real time systems
There are two types of real time systems based on timing constraints.
Hard real time
A hard real time system can never miss its deadline. If the function is not completed within the allotted time constraints, the application is considered to have failed. This could cause great loss if the system in question affects physical surrounds or human lives. Examples of hard real time systems include:
- A car engine control system. A delayed signal may cause engine damage or failure.
- A heart pacemaker. Because of the risk to human life, a pacemaker requires hard real time computing to guarantee that the pacemaker will not fail.
- Machines on an assembly line. If the machine is delayed, it could lead to the entire assembly line being stopped.
- Certain types of printers, such as inkjets, laserprinter, and line printers. Failure within these types of printers could cause missing output or misaligned output.
Soft real time
A soft real time system can miss its deadline, and as long as tasks are timely executed, the results have value. Soft real time systems are used to solve issues of simultaneous access and the need to keep a number of systems up to date through evolving situations. Missing the deadline has no disastrous consequences. Examples of soft real time systems include:
- Commercial airline software. Flight plans require constant updates as they shift, but a few seconds or minutes latency is still operable.
- Live audio–video systems. A frame of audio that is played later may result in a brief glitch, the system can still continue to operate.
- Video games: As the next image cannot be computed in advance, a video game but depends on inputs from the player. Therefore, only a short time is available to perform the necessary computing needed to generate a frame. If the deadline is missed, the game can still continue at a lower frame rate.