Hardware Reference
In-Depth Information
1.2.3
DESIRABLE FEATURES OF REAL-TIME
SYSTEMS
Complex control applications that require hard timing constraints on tasks' execution
need to be supported by highly predictable operating systems. Predictability can be
achieved only by introducing radical changes in the basic design paradigms found in
classical timesharing systems.
For example, in any real-time control system, the code of each task is known a priori
and hence can be analyzed to determine its characteristics in terms of computation
time, resources, and precedence relations with other tasks. Therefore, there is no
need to consider a task as an unknown processing entity; rather, its parameters can be
used by the operating system to verify its schedulability within the specified timing
requirements. Moreover, all hard tasks should be handled by the scheduler to meet
their individual deadlines, not to reduce their average response time.
In addition, in any typical real-time application, the various control activities can be
seen as members of a team acting together to accomplish one common goal, which
can be the control of a nuclear power plant or an aircraft. This means that tasks are not
all independent and it is not strictly necessary to support independent address spaces.
In summary, there are some very important basic properties that real-time systems
must have to support critical applications. They include the following:
Timeliness . Results have to be correct not only in their value but also in the time
domain. As a consequence, the operating system must provide specific kernel
mechanisms for time management and for handling tasks with explicit timing
constraints and different criticality.
Predictability . To achieve a desired level of performance, the system must be
analyzable to predict the consequences of any scheduling decision. In safety
critical applications, all timing requirements should be guaranteed off line, before
putting system in operation. If some task cannot be guaranteed within its time
constraints, the system must notify this fact in advance, so that alternative actions
can be planned to handle the exception.
Efficiency . Most of real-time systems are embedded into small devices with
severe constraints in terms of space, weight, energy, memory, and computational
power. In these systems, an efficient management of the available resources by
the operating system is essential for achieving a desired performance.
Search WWH ::




Custom Search