|
Abstract : |
This paper describes and evaluates operating system support for on-line scheduling of real-time tasks on shared memory multiprocessors. The contributions of this work include: (1) the design and implementation of an efficient on-line scheduler that can execute a variety of policies addressing both the assignment of real-time tasks to processors and the scheduling of tasks on individual processors, (2) performance improvements in multiprocessor scheduling due to the separation of task schedulability analysis from actual task scheduling and due to the use of parallelism internal to the scheduler, and (3) the scheduling of individual as well as sets and groups of tasks. Performance measurements on a multiprocessor machine describe the costs and benefits attained from (2) and (3), based on experiences with a multiprocessor robot navigation and planning program being implemented as part of this research. 1 Runtime Support for Real-Time Systems Complex real-time applications. Most modern embedded architectures consist of multiple processors operating in parallel to achieve the high throughput and low latency required by their application software. Accordingly, such software is partitioned into multiple tasks that potentially execute concurrently, often using shared resources, and typically requiring that task-specific timing constraints be met during execution. Moreover, real-time systems, |