Abstract
A static scheduling algorithm is presented for off-line scheduling of tasks in distributed hard real-time systems. The tasks considered are instances of periodic jobs and have deadlines, resource requirements and precedence constraints. Tasks are divided into nonpreemptable blocks and all task characteristics are known a priori. The algorithm orders the tasks and iteratively schedules the tasks according to the order. Each task is scheduled globally by selecting a node to which it is assigned. Then, the task is scheduled locally by adding the task to the schedule of the selected node. Heuristics are used for both task ordering and node selection in order to guide the algorithm to a feasible schedule. Whenever local scheduling leads to an infeasible schedule, backtracking is used.
Results of simulation studies of randomly generated task sets are presented. Although the scheduling problem is NP-hard, the results show that time performance is acceptable for off-line scheduling, except for extremely difficult task sets which make extensive use of the available resources.
Similar content being viewed by others
References
ChettoH., and ChettoM. 1989. Some Results of the Earliest Deadline Scheduling Algorithm, IEEE Transactions on Software Engineering, 15, (10): 1261–1269.
CasavantT.L., and KuhlJ.G. 1988. A Taxonomy of Scheduling in General-Purpose Distributed Computing Systems. IEEE Transactions on Software Engineering, 14, (2): 141–154.
Fohler, G., and Koza, C. 1990. Scheduling for Distributed Hard Real-Time Systems Using Heuristic Search Strategies. Technical Report Nr 12/90, University of Technology Vienna.
Kopetz, H., Damm, A., Koza, C., Mulazzani, M., Schwabl, W., Senft, C., and Zainlinger, R. 1989. Distributed Fault-Tolerant Real-Time Systems: The MARS Approach. IEEE Micro.
LiuC.L., and LaylandJ.W. 1973. Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment. Journal of the ACM, 20, (1): 46–61.
Lehoczky, J.P., Sha, L., and Ding, V. 1987. The Rate Monotonic Scheduling Algorithm: Exact Characterization and Average Case Behavior. Technical Report, Department of Statistics, Carnegie-Mellon.
StankovicJ.A., RamamrithamK., and ChengS. 1985. Evaluation of a Flexible Task Algorithm for Distributed Hard Real-Time Systems. IEEE Transactions on Computers, C-34, (12): 1130–1143.
SpruntB., ShaL., and LehoczkyJ. 1989. Aperiodic Task Scheduling for Hard Real-Time Systems. The Journal of Real-Time Systems, 1: 27–60.
XuJ., and ParnasD.L. 1990. Scheduling Processes with Release Times, Deadlines, Precedence and Exclusion Relations. IEEE Transactions on Software Engineering, 16 (3): 360–369.
ZhaoW., RamamrithamK., and StankovicJ.A. 1987. Scheduling Tasks with Resource Requirements in Hard Real-Time Systems. IEEE Transactions on Software Engineering SE-13, (5): 564–577.
ZhaoW., RamamrithamK., and StankovicJ.A. 1987. Preemptive Scheduling Under Time and Resource Constraints. IEEE Transactions on Computers, c-36, (8): 949–960.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Verhoosel, J.P.C., Luit, E.J., Hammer, D.K. et al. A static scheduling algorithm for distributed hard real-time systems. Real-Time Syst 3, 227–246 (1991). https://doi.org/10.1007/BF00364957
Issue Date:
DOI: https://doi.org/10.1007/BF00364957