|
REAL TIME OPERATING SYSTEM
Within the last ten years real-time systems research
has been transformed from a niche industry into a mainstream enterprise
with clients in a wide variety of industries and academic disciplines.
It will continue to grow in importance and affect an increasing number
of industries as many of the reasons for the rise of its prominence will
persist for the foreseeable future.
What is RTOS?
Real Time Computing and Real Time Operating Systems( RTOS ) is an
emerging discipline in software engineering. This is an embedded
technology wherebythe application software does the dual function of
operating system also. In RTOS thecorrectness of the system depends not
only on the logical result but also on the time atwhich the results are
obtained.
Real-time System
??Provides deterministic response to external events
??Has the ability to process data at its rate of occurrence
??Is deterministic in its functional & timing behavior
??Whose timing is analyzed in the worst cases not in the typical, normal
cases to
guarantee a limiting response in any circumstances.
The seminar will basically provide a practical
understanding of the goals, structure and operation of a real-time
operating system (RTOS). The basic concepts of real-time system like the
RTOS Kernel will be given a detailed description. The structure of the
kernel is discussed, stressing the factors which affect response times
and performance. Examples of RTOS functions such as scheduling,
interrupt processing and intertask communication structures will also be
discussed. Features of commercially available RTOS products are also
presented.A real-time system is one where the timeliness of the result
of a calculation is important Examples include military weapons systems,
factory control systems, and Internet video and audio streaming.
Different definitions of real-time systems exist. Here are just a few:
- Real-time computing is computing where system correctness depends not
only on the correctness of the logical result of the computation but
also on the result delivery time.
- A Real-Time System is an interactive system that maintains an on-going
relationship with an asynchronous environment, i.e. an environment that
progresses irrespective of the Real Time System, in an uncooperative
manner.
- Real-time (software) (IEEE 610.12 - 1990): Pertaining a system or mode
of operation in which computation is performed during the actual time
that an external process occurs, in order that the computation results
may be used to control, monitor, or respond in a timely manner to the
external process.
From the above definitions its understood that in Real Time Systems, the
TIME is the biggest constraint. This makes real time systems different
from ordinary systems. Thus in RTS data needs to be processed at some
regular and timely rate. Also it should have fast response to events
occurring at nonregular rates. In real world systems there is some delay
between presentation of inputs and appearance of all associated outputs
called the Response time. Thus a real time system must satisfy explicit
response time constraints or risk severe consequences including failure.
Real - Time Systems and Real - Time Operating Systems
Timeliness is the single most important aspect of a
real -time system. These systems respond to a series of external inputs,
which arrive in an unpredictable fashion. The real-time systems process
these inputs, take appropriate decis ions and also generate output
necessary to control the peripherals connected to them. As defined by
Donald Gillies "A real-time system is one in which the correctness
of the computations not only depends upon the logical correctness of the
computation but also upon the time in which the result is produced. If
the timing constraints are not met, system failure is said to have
occurred."
It is essential that the timing constraints of the
system are guaranteed to be met. Guaranteeing timing behaviour requires
that the system be predictable.
The design of a real -time system must specify the
timing requirements of the system and ensure that the system performance
is both correct and timely. There are three types of time constraints:
¢ Hard: A late response is incor rect and implies a
system failure. An example of such a system is of medical equipment
monitoring vital functions of a human body, where a late response would
be considered as a failure.
¢ Soft: Timeliness requirements are defined by using
an average respons e time. If a single computation is late, it is not
usually significant, although repeated late computation can result in
system failures. An example of such a system includes airlines
reservation systems.
¢ Firm: This is a combination of both hard and soft
t imeliness requirements. The computation has a shorter soft requirement
and a longer hard requirement. For example, a patient ventilator must
mechanically ventilate the patient a certain amount in a given time
period. A few seconds' delay in the initiation of breath is allowed, but
not more than that.
One need to distinguish between on -line systems such
as an airline reservation system, which operates in real-time but with
much less severe timeliness constraints than, say, a missile control
system or a telephone switch. An interactive system with better response
time is not a real-time system. These types of systems are often
referred to as soft real time systems. In a soft real -time system (such
as the airline reservation system) late data is still good dat a.
However, for hard real -time systems, late data is bad data. In this
paper we concentrate on the hard and firm real-time systems only.
Most real -time systems interface with and control
hardware directly. The software for such systems is mostly custom
-developed. Real -time Applications can be either embedded applications
or non -embedded (desktop) applications. Real -time systems often do not
have standard peripherals associated with a desktop computer, namely the
keyboard, mouse or conventional display monitors. In most instances,
real-time systems have a customized version of these devices
|