Real-Time System
Definition
Various definitions exist for "real-time," depending on which source is consulted. Nonetheless, the common theme among all definitions is that the system must satisfy deadline constraints in order to be correct.[1]
Two possible definitions are as follows:
- A real-time system is a computer system that must satisfy bounded response-time constraints or risk several consequences, including failure.
- A real-time system is one whose logical correctness is based on both the correctness of the outputs and their timeliness.
In any case, by making unnecessary the notion of timeliness, every system becomes a real-time system.
Types of Real-Time Systems
Real-time systems can be classified based on many criterions, but the one most discussed is time constraints, i.e., how important it is for the system to hit specific deadlines
Real-time Systems can be classified based on many criterions, but the one most discussed is time constraints - or how important it is for the system to hit specific deadlines. Based on this, we have the following classifications:
Soft Real-Time System
A soft real-time system in one in which performance is degraded but not destroyed by failure to meet response-time constraints.
Hard Real-Time System
Unlike, a soft real-time system, systems where failure to meet response-time constraints leads to complete or catastrophic system failure are called hard real-time systems.
If a real-time system fails to perform according to system specifications, it is considered a Failed System. We can consider "failure" for a real-time system to mean the "inability of the system to perform according to system specifications."
Firm Real-Time System
A firm real-time system is one in which a few missed deadlines will not lead to total failure, but missing more than a few may lead to complete or catastrophic system failure.
System | Real-Time Classification | Explanation |
---|---|---|
Avionics weapons delivery system in which pressing a button launches an air-to-air missile | Hard | Missing the deadline to launch the missile within a specified time after pressing the button may cause the target to be missed, which will result in catastrophe |
Navigation controller for an autonomous weed-killer robot | Firm | Missing a few navigation deadlines causes the robot to veer out from a planned path and damage some crops |
Console hockey game | Soft | Missing even several deadlines will only degrade performance |
Real-time systems are often Reactive or Embedded Systems. Reactive systems are those in which task scheduling is driven by ongoing interaction with their environment; for example, a fire-control system reacts to certain buttons pressed by the pilot.