Results 1 - 10
of
14
Real-time scheduling theory and ADA
- IEEE Computer
, 1990
"... Approved for public release. Distribution unlimited. JPO approval signature on file. ..."
Abstract
-
Cited by 105 (5 self)
- Add to MetaCart
Approved for public release. Distribution unlimited. JPO approval signature on file.
Preemptively Scheduling Hard-Real-Time Sporadic Tasks on One Processor
- In Proceedings of the 11th Real-Time Systems Symposium
, 1990
"... In this paper, we consider the preemptivescheduling of hard-real-time sporadic task systems on one processor. Wefirstgive necessary and sufficient conditions for a sporadic task system to be feasible (i.e., schedulable). The conditions cannot, in general, be tested efficiently (unless P = NP). They ..."
Abstract
-
Cited by 88 (19 self)
- Add to MetaCart
In this paper, we consider the preemptivescheduling of hard-real-time sporadic task systems on one processor. Wefirstgive necessary and sufficient conditions for a sporadic task system to be feasible (i.e., schedulable). The conditions cannot, in general, be tested efficiently (unless P = NP). They do, however, lead to a feasibilitytestthat runs in efficient pseudo-polynomial time for a very large percentage of sporadic task systems. 1 Introduction Scheduling theory as it applies to hard-real-time environments --- environments where the missing of a single deadline may have disastrous consequences --- seems to currently be enjoying a renaissance. Hardreal -time scheduling problems may concern either fixed-duration tasks or recurring tasks that must be completed within a certain time frame. The problems most studied within the recurring category involve periodically recurring tasks [LL73, LM80, LM81, LW82,Mok83, BHR90]. Aperiodically or sporadically recurring tasks have also been stud...
Mode Change Protocols for Priority-Driven Preemptive Scheduling
- Real-Time Systems
, 1988
"... : In many real-time applications, the set of tasks in the system as well as the characteristics of the tasks change during system execution. Specifically, the system moves from one mode of execution to another as its mission progresses. A mode change is characterized by the deletion of some tasks, a ..."
Abstract
-
Cited by 53 (7 self)
- Add to MetaCart
: In many real-time applications, the set of tasks in the system as well as the characteristics of the tasks change during system execution. Specifically, the system moves from one mode of execution to another as its mission progresses. A mode change is characterized by the deletion of some tasks, addition of new tasks, or changes in the parameters of certain tasks, e.g., increasing the sampling rate to obtain a more accurate result. This paper discusses a protocol for systematically accomplishing mode change in the context of a priority-driven preemptive scheduling environment. 1. Introduction To successfully develop a large-scale real-time system, we must be able to manage both the logical complexity and timing complexity by using a disciplined approach. The logical complexity is addressed by software engineering methodology, while the timing complexity is addressed by research in real-time scheduling algorithms [2, 3, 5, 6, 7, 8, 10, 12, 14]. An important class of scheduling algori...
Scheduling Hard Real-Time Systems: A Review
, 1991
"... Recent results in the application of... this paper. The review takes the form of an analysis of the problems presented by different application requirements and characteristics. Issues covered include uniprocessor and multiprocessor systems, periodic and aperiodic processes, static and dynamic algor ..."
Abstract
-
Cited by 45 (7 self)
- Add to MetaCart
Recent results in the application of... this paper. The review takes the form of an analysis of the problems presented by different application requirements and characteristics. Issues covered include uniprocessor and multiprocessor systems, periodic and aperiodic processes, static and dynamic algorithms, transient overloads and resource usage. Protocols that limit and reduce blocking are discussed. Considerations are also given to scheduling Ada tasks.
Aperiodic Task Scheduling for Real-Time Systems
, 1990
"... This thesis develops the Sporadic Server (SS) algorithm for scheduling aperiodic tasks in real-time systems. The SS algorithm is an extension of the rate monotonic algorithm which was designed to schedule periodic tasks. This thesis demonstrates that the SS algorithm is able to guarantee deadlines f ..."
Abstract
-
Cited by 40 (0 self)
- Add to MetaCart
This thesis develops the Sporadic Server (SS) algorithm for scheduling aperiodic tasks in real-time systems. The SS algorithm is an extension of the rate monotonic algorithm which was designed to schedule periodic tasks. This thesis demonstrates that the SS algorithm is able to guarantee deadlines for hard-deadline aperiodic tasks and provide good responsiveness for soft-deadline aperiodic tasks while avoiding the schedulability penalty and implementation complexity of previous aperiodic service algorithms. It is also proven that the aperiodic servers created by the SS algorithm can be treated as equivalently-sized periodic tasks when assessing schedulability. This allows all the scheduling theories developed for the rate monotonic algorithm to be used to schedule aperiodic tasks. For scheduling aperiodic and periodic tasks that share data, this thesis defines the interactions and schedulability impact of using the SS algorithm with the priority inheritance protocols. For scheduling ha...
Feasibility Problems for Recurring Tasks on One Processor
, 1992
"... We give a comprehensive summary of our recent research on the feasibility problems for various types of hard-real-time preemptive task systems on one processor. We include results on periodic, sporadic, and hybrid task systems. While many of the results herein have appeared elsewhere, this is the fi ..."
Abstract
-
Cited by 32 (6 self)
- Add to MetaCart
We give a comprehensive summary of our recent research on the feasibility problems for various types of hard-real-time preemptive task systems on one processor. We include results on periodic, sporadic, and hybrid task systems. While many of the results herein have appeared elsewhere, this is the first paper presenting a holistic view of the entire problem.
Probabilistic Job Scheduling for Distributed Real-time Applications
- In Proceedings of the First IEEE Workshop on Real-Time Applications
, 1993
"... We describe a heuristic for dynamically scheduling timeconstrained tasks in a distributed environment. When a task is submitted to a node, the scheduling software tries to schedule the task locally so as to meet its deadline. If that is not feasible, it tries to locate another node where this could ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
We describe a heuristic for dynamically scheduling timeconstrained tasks in a distributed environment. When a task is submitted to a node, the scheduling software tries to schedule the task locally so as to meet its deadline. If that is not feasible, it tries to locate another node where this could be done with a high probability of success. Nodes in the system inform each other about their state (viz-a-viz the availability of free cycles) using a combination of broadcasting and gossiping. The performance of the proposed protocol is evaluated both analytically and via simulation. Based on our findings, we argue that keeping a diverse availability profile and using passive bidding (through gossiping) are both advantageous to distributed scheduling for real-time systems. 1 Introduction Loosely coupled, time-critical distributed systems are used to control physical processes in complex applications, such as controllers in aviation systems and nuclear power plants. Most tasks in such syst...
Static and Dynamic Scheduling of Sporadic Tasks for Single-Processor Systems
, 1991
"... Sporadic tasks in hard-real-time systems, as definedby Mok [14], are characterized by triples (e# d# p)# 1 e d# e p. Two successive requests by the same task will beseparatedbyat least p time units, and the task must be scheduled e time units within d time units of a request. A scheduling algori ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
Sporadic tasks in hard-real-time systems, as definedby Mok [14], are characterized by triples (e# d# p)# 1 e d# e p. Two successive requests by the same task will beseparatedbyat least p time units, and the task must be scheduled e time units within d time units of a request. A scheduling algorithm is said to be static if it does not depend on the sequenceofrequests# otherwise it is dynamic. We present here three major results. The first is that no static algorithm can be optimal. The second is that, modulo certain assumptions that imply scalability, no dynamic algorithm can take less than O(n) online time per slot scheduled. The third result is a fast scheduling algorithm based on pinwheel scheduling. 1 Introduction Hard-real-time systems are systems of tasks where missing a single deadline may have disastrous consequences. Such systems have been the focus of much study over the past twentyyears [13,11,9,12,14,1, 10, 7, 17, 8]. Sporadic tasks in a hard-real-time environment wer...
Real-Time Software Engineering in Ada: Observations and Guidelines
, 1989
"... : Two important aspects of developing a real-time system are controlling devices and managing concurrency. In this report, we present several techniques for controlling devices with Ada and several Ada tasking paradigms for managing concurrency. The material presented in this report is taken from ou ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
: Two important aspects of developing a real-time system are controlling devices and managing concurrency. In this report, we present several techniques for controlling devices with Ada and several Ada tasking paradigms for managing concurrency. The material presented in this report is taken from our experiences in developing a real-time embedded system in Ada, and we use examples from this system to illustrate the various methods we present. We begin by describing our experiences using Ada to control devices. Specifically, we identify issues related to accessing device registers and handling interrupts, and present techniques for dealing with such issues. We then recount our experiences using Ada to manage concurrency. Specifically, we present coding paradigms for implementing periodicity and constructing synchronization mechanisms. We illustrate analytical methods for determining the schedulability of a task set. We then discuss the effect of aperiodic processing requirements on the ...

