New version page

Real-Time and Embedded Systems

Upgrade to remove ads

This preview shows page 1 out of 4 pages.

View Full Document
Premium Document
Do you want full access? Go Premium and unlock all 4 pages.
Access to all documents
Download any document
Ad free experience

Upgrade to remove ads
Unformatted text preview:

Real-Time and Embedded SystemsJOHN A. STANKOVICUniversity of Massachusetts, Amherst ^[email protected]&Real-time systems are those systems inwhich the correctness of the system de-pends not only on the logical results ofcomputation but also on the time atwhich the results are produced [Stan-kovic 1988]. They span a broad spec-trum of complexity from very simplemicrocontrollers in embedded systems(a microprocessor controlling an auto-mobile engine) to highly sophisticated,complex, and distributed systems (airtraffic control for the continental UnitedStates). Other real-time systems in-clude command and control systems,process control systems, and multime-dia and high-speed communication sys-tems. Some real-time systems are be-ginning to add expert systems and otherAI technology, creating additional re-quirements and complexities. At leastthree major trends in the real-time andembedded systems field have had a ma-jor impact on its technology: the in-creased growth and sophistication ofembedded systems, the development ofmore scientific and technological resultsfor hard real-time systems, and the ad-vent of distributed multimedia.Most embedded systems consist of asmall microcontroller and limited soft-ware situated within some product suchas a microwave oven or automobile.However, with the increasing sophisti-cation of such systems, powerful micro-controllers and digital signal processing(DSP) chips are commonly used, as areoff-the-shelf real-time operating sys-tems and design and debugging tools.Many people working with embeddedsystems deal on a daily basis with sen-sors and data acquisition technologyand systems; others construct architec-tures based on single-board computers(many are still 68000-based, but RISCprocessors are being used more andmore) and buses such as the VME bus.Many people are involved with the pro-gramming and debugging of embeddedsystems, largely using the C program-ming language and cross developmentand debugging platforms. Embeddedsystems may or may not have real-timeconstraints.Hard real-time systems are those inwhich missing an important deadlinecan cause severe consequences, evendeath. In this area, many fundamentalresults have been developed. For exam-ple, in real-time scheduling, rate mono-tonic analysis has enabled careful eval-uation of many practical systems; theconcept and analysis of competitive al-gorithms has provided important sched-uling bounds and limits; and on-lineplanning has added flexible and dy-namic capabilities to real-time systems.Operating systems research has pro-duced predictable primitives, time-con-strained synchronization techniques,and reservation and admission-controlparadigms. Many other results exist inreal-time architecture, fault tolerance,communication protocols, specificationand design tools, formal verification, da-tabases and object-oriented systems.Emphasis on all these areas is expectedto increase in the foreseeable future.Many hard real-time systems are em-bedded systems.Distributed multimedia have pro-duced a new set of soft real-time re-quirements. Real-time principles lie atthe heart of distributed multimedia, butwithout the concomitant high reliabilityCopyright © 1996, CRC Press.ACM Computing Surveys, Vol. 28, No. 1, March 1996requirements found in safety-critical,hard real-time systems.Underlying Principles. Typically, areal-time system consists of a control-ling and a controlled system. For exam-ple, in an automated factory, the con-trolled system is the factory floor withits robots, assembling stations, and theassembled parts, while the controllingsystem is the computer and human in-terfaces that manage and coordinate theactivities on the factory floor. Thus, thecontrolled system can be viewed as theenvironment with which the computerinteracts.The controlling system interacts withits environment using informationabout the environment available fromvarious sensors. It is imperative thatthe state of the environment as per-ceived by the controlling system be con-sistent with the actual state of the envi-ronment. Hence, periodic monitoring ofthe environment as well as timely pro-cessing of the sensed information is nec-essary.Timing correctness requirements in areal-time system arise because of thephysical impact of the controlling sys-tem’s activities upon its environmentvia actuators. The most common timingconstraints for tasks are periodic, aperi-odic, and sporadic. A periodic task isone that is activated every T units. Thedeadline for each activated instancemay be less than, equal to, or greaterthan the period T. An aperiodic task isactivated at unpredictable times. A spo-radic task is an aperiodic task with theadditional constraint that there is aminimum interarrival time betweentask activations.What happens when timing con-straints are not met? The answer de-pends, for the most part, on the type ofapplication. A real-time system thatcontrols a nuclear power plant or a mis-sile cannot afford to miss timing con-straints for critical tasks. Resourcesneeded for critical tasks in such systemsmust be preallocated so that the taskscan execute without delay. In many sit-uations, however, some leeway does ex-ist. For example, even on an automatedfactory floor, if it is estimated that thecorrect command to a robot cannot begenerated on time, it may be appropri-ate to command the robot to stop (pro-vided no other moving objects will col-lide with it and cause a different type ofdisaster) or to slow down (thereby dy-namically generating more time to pro-duce a correct command).We now discuss underlying principlesin several representative areas of real-time computing, including real-timescheduling, real-time kernels, and dis-tributed multimedia.Real-time scheduling. Real-time sched-uling is the process of creating start andfinish times for sets of tasks such thatall timing, precedence, and resourceconstraints are met. Real-time schedul-ing results in recent years have beenextensive. Theoretical results haveidentified worst-case bounds for dy-namic on-line algorithms, and complex-ity results have been produced forvarious types of assumed task-set char-acteristics.More applied scheduling results havealso been produced. For example, anextensive set of improvements has beenmade to the rate monotonic algorithm,which assigns the highest priority to themost frequent periodic task. Often asystem has both periodic and sporadictasks. To handle this situation, the spo-radic server algorithm was invented.This algorithm

Download Real-Time and Embedded Systems
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...

Join to view Real-Time and Embedded Systems and access 3M+ class-specific study document.

We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Real-Time and Embedded Systems 2 2 and access 3M+ class-specific study document.


By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?