Page 10 - DCAP608_REAL TIME SYSTEMS
P. 10
Unit 1: Concept of Real-time System
1.2 Hard Real-time Systems Notes
A hard real-time task is one that is constrained to produce its results within certain predefined
time bounds. The system is considered to have failed whenever any of its hard real-time tasks
does not produce its required results before the specified time bound.
When a process is considered hard real-time, it must complete its operation by a specific time. If
it fails to meet its deadline, its operation is without value and the system for which it is a
component could face failure. When a system is considered soft real-time, however, there is
some room for lateness. For example, in such a system, a delayed process may not cause the
entire system to fail. Instead, it may lead to a decrease in the usual quality of the process or
system.
Hard real-time systems: These are often used in embedded systems. Consider, for example, a car
engine control system. Such a system is considered hard because a late process could cause the
engine to fail.
An example of a system having hard real-time tasks is a robot. The robot cyclically carries out a
number of activities including communication with the host system, logging all completed
activities, sensing the environment to detect any obstacles present, tracking the objects of interest,
path planning, effecting next move, etc. Now consider that the robot suddenly encounters an
obstacle. The robot must detect it and as soon as possible try to escape colliding with it. If it fails
to respond to it quickly (i.e. the concerned tasks are not completed before the required time
bound) then it would collide with the obstacle and the robot would be considered to have failed.
Therefore detecting obstacles and reacting to it are hard real-time tasks.
Another application having hard real-time tasks is an anti-missile system. An anti-missile system
consists of the following critical activities (tasks). An anti-missile system must first detect all
incoming missiles, properly position the anti-missile gun, and then fire to destroy the incoming
missile before the incoming missile can do any damage. All these tasks are hard real-time in
nature and the anti-missile system would be considered to have failed, if any of its tasks fails to
complete before the corresponding deadlines.
Applications having hard real-time tasks are typically safety-critical. This means that any failure
of a real-time task, including its failure to meet the associated deadlines, would result in severe
consequences. This makes hard real-time tasks extremely critical. Criticality of a task can range
from extremely critical to not so critical. Task criticality therefore is a different dimension than
hard or soft characterization of a task. Criticality of a task is a measure of the cost of a failure –
the higher the cost of failure, the more critical is the task.
Did u know? For hard real-time tasks in practical systems, the time bounds usually range
from several micro seconds to a few milliseconds. It may be noted that a hard real-time
task does not need to be completed within the shortest time possible, but it is merely
required that the task must complete within the specified time bound. In other words,
there is no reward in completing a hard real-time task much ahead of its deadline.
Self Assessment
Fill in the blanks:
1. An ……………… system is responsible for managing the hardware resources of a computer
and hosting applications that run on the computer.
LOVELY PROFESSIONAL UNIVERSITY 5