Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

RtEmbSysSurvey Stankovic

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Real-Time and Embedded Systems

JOHN A. STANKOVIC
University of Massachusetts, Amherst ^stankovic@cs.umass.edu&

Real-time systems are those systems in tures based on single-board computers


which the correctness of the system de- (many are still 68000-based, but RISC
pends not only on the logical results of processors are being used more and
computation but also on the time at more) and buses such as the VME bus.
which the results are produced [Stan- Many people are involved with the pro-
kovic 1988]. They span a broad spec- gramming and debugging of embedded
trum of complexity from very simple systems, largely using the C program-
microcontrollers in embedded systems ming language and cross development
(a microprocessor controlling an auto- and debugging platforms. Embedded
mobile engine) to highly sophisticated, systems may or may not have real-time
complex, and distributed systems (air constraints.
traffic control for the continental United Hard real-time systems are those in
States). Other real-time systems in- which missing an important deadline
clude command and control systems, can cause severe consequences, even
process control systems, and multime- death. In this area, many fundamental
dia and high-speed communication sys- results have been developed. For exam-
tems. Some real-time systems are be- ple, in real-time scheduling, rate mono-
ginning to add expert systems and other tonic analysis has enabled careful eval-
AI technology, creating additional re- uation of many practical systems; the
quirements and complexities. At least concept and analysis of competitive al-
three major trends in the real-time and gorithms has provided important sched-
embedded systems field have had a ma- uling bounds and limits; and on-line
jor impact on its technology: the in- planning has added flexible and dy-
creased growth and sophistication of namic capabilities to real-time systems.
embedded systems, the development of Operating systems research has pro-
more scientific and technological results duced predictable primitives, time-con-
for hard real-time systems, and the ad- strained synchronization techniques,
vent of distributed multimedia. and reservation and admission-control
Most embedded systems consist of a paradigms. Many other results exist in
small microcontroller and limited soft- real-time architecture, fault tolerance,
ware situated within some product such communication protocols, specification
as a microwave oven or automobile. and design tools, formal verification, da-
However, with the increasing sophisti- tabases and object-oriented systems.
cation of such systems, powerful micro- Emphasis on all these areas is expected
controllers and digital signal processing to increase in the foreseeable future.
(DSP) chips are commonly used, as are Many hard real-time systems are em-
off-the-shelf real-time operating sys- bedded systems.
tems and design and debugging tools. Distributed multimedia have pro-
Many people working with embedded duced a new set of soft real-time re-
systems deal on a daily basis with sen- quirements. Real-time principles lie at
sors and data acquisition technology the heart of distributed multimedia, but
and systems; others construct architec- without the concomitant high reliability

Copyright © 1996, CRC Press.

ACM Computing Surveys, Vol. 28, No. 1, March 1996


206 • John A. Stankovic

requirements found in safety-critical, uations, however, some leeway does ex-


hard real-time systems. ist. For example, even on an automated
factory floor, if it is estimated that the
Underlying Principles. Typically, a correct command to a robot cannot be
real-time system consists of a control- generated on time, it may be appropri-
ling and a controlled system. For exam- ate to command the robot to stop (pro-
ple, in an automated factory, the con- vided no other moving objects will col-
trolled system is the factory floor with lide with it and cause a different type of
its robots, assembling stations, and the disaster) or to slow down (thereby dy-
assembled parts, while the controlling namically generating more time to pro-
system is the computer and human in- duce a correct command).
terfaces that manage and coordinate the We now discuss underlying principles
activities on the factory floor. Thus, the in several representative areas of real-
controlled system can be viewed as the time computing, including real-time
environment with which the computer scheduling, real-time kernels, and dis-
interacts. tributed multimedia.
The controlling system interacts with
its environment using information Real-time scheduling. Real-time sched-
about the environment available from uling is the process of creating start and
various sensors. It is imperative that finish times for sets of tasks such that
the state of the environment as per- all timing, precedence, and resource
ceived by the controlling system be con- constraints are met. Real-time schedul-
sistent with the actual state of the envi- ing results in recent years have been
ronment. Hence, periodic monitoring of extensive. Theoretical results have
the environment as well as timely pro- identified worst-case bounds for dy-
cessing of the sensed information is nec- namic on-line algorithms, and complex-
essary. ity results have been produced for
Timing correctness requirements in a various types of assumed task-set char-
real-time system arise because of the acteristics.
physical impact of the controlling sys-
tem’s activities upon its environment More applied scheduling results have
via actuators. The most common timing also been produced. For example, an
constraints for tasks are periodic, aperi- extensive set of improvements has been
odic, and sporadic. A periodic task is made to the rate monotonic algorithm,
one that is activated every T units. The which assigns the highest priority to the
deadline for each activated instance most frequent periodic task. Often a
may be less than, equal to, or greater system has both periodic and sporadic
than the period T. An aperiodic task is tasks. To handle this situation, the spo-
activated at unpredictable times. A spo- radic server algorithm was invented.
radic task is an aperiodic task with the This algorithm guarantees that the
additional constraint that there is a deadlines of all periodic tasks will be
minimum interarrival time between met and provides excellent response
task activations. time for the sporadic tasks. Techniques
What happens when timing con- were also created to handle the problem
straints are not met? The answer de- of priority inversion, a situation where
pends, for the most part, on the type of a low-priority task holds a resource re-
application. A real-time system that quired by a high-priority task. A set of
controls a nuclear power plant or a mis- algorithms that perform dynamic on-
sile cannot afford to miss timing con- line planning were also produced. These
straints for critical tasks. Resources algorithms have many nice properties,
needed for critical tasks in such systems including quality of service guarantees,
must be preallocated so that the tasks early warning that a deadline will be
can execute without delay. In many sit- missed, and admission control. We have

ACM Computing Surveys, Vol. 28, No. 1, March 1996


Real-Time and Embedded Systems • 207

also seen the development of scheduling over the network. This is known as end-
results for imprecise computation—a to-end scheduling.
situation where tasks obtain a greater The Mars project [Kopetz 1989], the
value the longer they execute up to Spring project [Stankovic 1991], and a
some maximum value. project at the University of Michigan
[Shin 1991] are all attempting to solve
Real-time kernels. Operating systems distributed end-to-end scheduling. The
must provide basic support for predict- Mars project uses an a priori analysis
ably satisfying real-time constraints, for and then statically schedules and re-
fault tolerance and distribution, and for serves resources so that distributed exe-
integrating time-constrained resource al- cution can be guaranteed to make its
locations and scheduling across a spec- deadline. The Spring approach supports
trum of resource types, including sensor dynamic requests for real-time virtual
processing, communications, CPU, mem- circuits (guaranteed delivery time) and
ory, and other forms of I/O. At least three real-time datagrams (best-effort deliv-
issues need to be addressed: ery) integrated with CPU scheduling so
—The time dimension must be elevated as to guarantee application-level end-to-
to a central principle of the system, end timing requirements. Spring uses a
not simply left as an afterthought. distributed reflective memory based on
a fiber optic ring to achieve the lower-
—The basic paradigms found in today’s level predictable communication proper-
general-purpose distributed operating ties. The Michigan work also supports
systems must change. Currently, they dynamic real-time virtual circuits and
are based on the notion that applica- datagrams, but is based on a general
tion tasks request resources as if they multi-hop communication subnet.
were random processes; operating Regarding the portability of applica-
systems are designed to expect ran- tions, many real-time UNIX operating
dom inputs and to display good aver- systems are appearing [Furht 1991],
age-case behavior. The new paradigm and a standard for real-time operating
must be based on the delicate balance systems, RT POSIX, is being developed
of flexibility and predictability: the [Gallmeister 1995]. While such stan-
system must remain flexible enough dards facilitate porting the code, how to
to allow a highly dynamic and adap- assess the timing properties of the
tive environment, but at the same ported application is still an open issue.
time be able to predict and possibly
avoid resource conflicts so that timing Distributed multimedia. Many real-
constraints can be met. time control applications, such as agile
—A highly integrated and time-con- manufacturing and process control, op-
strained resource allocation approach erate in highly nondeterministic envi-
is necessary to address timing con- ronments under timing constraints of
straints, predictability, adaptability, many types. Significant improvements
correctness, safety, and fault toler- can be made by embedding continuous
ance. and multimedia support in these appli-
cations. For example, in agile manufac-
Real-time kernels are also being ex- turing, remote factories, each consisting
tended to operate in highly cooperative of many automated workcells, must co-
multiprocessor and distributed system ordinate to handle new strategies for
environments. In such systems, sets of incoming product orders, to design new
communicating tasks (possibly located products, to schedule just-in-time deliv-
across a network) must be scheduled to eries of manufactured components, to
complete before a deadline, accounting monitor the plant operations, and to
for all system overheads, such as mes- solve difficult manufacturing floor prob-
sage copying and message transmission lems collaboratively.

ACM Computing Surveys, Vol. 28, No. 1, March 1996


208 • John A. Stankovic

To implement solutions cost-effec- facturing and process control into the


tively and give multimedia applications next generation.
direct access to plant operational data,
it is envisioned that the same comput- REFERENCES
ers would control the time-constrained FURHT, B., GROSTICK, D., GLUCH, D., RABBAT, G,
operations in and across the workcells PARKER, J., AND MCROBERTS, M. 1991. Real-
and support multimedia [Guha 1995]. Time Unix Systems, Design and Application
The backbone network would likely be Guide. Kluwer Academic, Boston, MA.
ATM. Distributed multimedia over ATM GALLMEISTER, B. 1995. POSIX.4: Programming
for the Real World. O’Reilly and Associates,
networks has enormous potential to Sebastopol, CA.
provide these applications with telecon- GUHA, A., PAVAN, A., LIU, J., RASTOGI, A., AND
ferencing for real-time coordination and STEEVES, T. 1995. Supporting real-time and
collaborative design, as well as visual multimedia applications on the Mercury test-
access via cameras to remote and local bed. IEEE J. Select. Areas Commun. 13, 4,
749 –763.
plant operations. These applications
KOPETZ, H., DAMM, A., KOZA, C., AND MULOZZANI,
would also benefit from a distributed D. 1989. Distributed fault tolerant real-time
real-time database that contains sensor systems: The Mars approach. IEEE Micro 9, 1,
information and the values of control 25– 40.
variables, both constrained by temporal SHIN, K. 1991. HARTS: A distributed real-time
validity intervals, plant operational architecture. IEEE Computer 24, 5, 25–35.
data, information on availability of raw STANKOVIC, J. 1988. Misconceptions about real-
materials, inventory of products, cus- time computing: A serious problem for next
generation systems. IEEE Computer 21, 10,
tomer orders, and so on. The confluence 10 –19.
of real-time databases, multimedia, and STANKOVIC, J. AND RAMAMRITHAM, K. 1991. The
real-time control has great potential for Spring kernel: A new paradigm for real-time
moving application areas such as manu- systems. IEEE Software 8, 3, 62–72.

ACM Computing Surveys, Vol. 28, No. 1, March 1996

You might also like