The Community for Technology Leaders
Green Image
<p>Embedded systems are loosely defined as electronic subsystems immersed in a larger physical system (e.g., a car, an airplane, a washing machine, a cellular phone) that implement a given functionality (i.e. a set of tasks) using one or more software-programmable device (e.g. a microcontroller, a Digital Signal Processor). Hence implementing the given functionality in an embedded system involves the partitioning of the tasks into hardware and software components. Since the software has to be executed on a limited set of processing units and several embedded systems are safety critical, deciding the execution sequence for the tasks on the processing units (scheduling) is an important problem to guarantee that the embedded system functions correctly.</p> <p>In this article we review several approaches to software scheduling for real-time embedded computing. In particular, we illustrate scheduling methods for reactive systems (her, the main concern is the speed of response to different inputs from the environment) and for Digital Signal Processing systems (the main concern is the efficient utilization of the processor(s), in the presence of a semi-regular stream of inputs).</p> <p>Given the characteristics of embedded systems, we focus on the scheduling validation problem that aims at answering the question whether a given schedule is guaranteed to satisfy a given set of constraints (deadlines, throughput, and so on).</p>
embedded systems, scheduling
Praveen Murthy, Alberto Sangiovanni-vincentelli, Luciano Lavagno, Felice Balarin, "Scheduling for Embedded Real-Time Systems", IEEE Design & Test of Computers, vol. 15, no. , pp. 71-82, January-March 1998, doi:10.1109/54.655185
92 ms
(Ver )