Abstract
This paper addresses a fundamental trade-off in dynamic scheduling between the cost of scheduling and the quality of the resulting schedules. The time allocated to scheduling must be controlled explicitly, in order to obtain good-quality schedules in reasonable times. As task constraints are relaxed, the algorithms proposed in this paper increase scheduling complexity to optimize longer and obtain high-quality schedules. When task constraints are tightened, the algorithms adjust scheduling complexity to reduce the adverse effect of long scheduling times on the schedule quality. We show that taking into account the scheduling time is crucial for honoring the deadlines of scheduled tasks. We investigate the performance of our algorithms in two scheduling models: one that allows idle-time intervals to exist in the schedule and another that does not. The model with idle-time intervals has important implications for dynamic scheduling which are discussed in the paper. Experimental evaluation of the proposed algorithms shows that our algorithms outperform other candidate algorithms in several parameter configurations.
Similar content being viewed by others
References
Bratley, P., Florian, M., and Robillard, P. 1971. Scheduling with earliest start and due date constraints. Naval Research Logistics Quarterly 18: 511–517.
Burns, A. 1991. Scheduling hard real-time systems: A review. Software Engineering Journal 6(3): 116–28.
Hamidzadeh, B., Shekhar, S., and Gopinath, P. 1993. A general search framework for dynamic scheduling of real-time tasks. IEEE Real-Time Operating Systems and Software Workshop.
Hamidzadeh, B., and Shekhar, S. 1993. Specification and analysis of real-time problem solvers. IEEE Transactions on Software Engineering 19(8).
Hong, K. S., and Leung, J. Y-T. 1988. On-line scheduling of real-time tasks. Proc.of the 9th IEEE Real-Time Systems Symposium, pp. 244–250
Howell, R. R., and Venkatrao, M. K. 1995. On non-preemptive scheduling of recurring tasks using inserted idle times. Information and Computation 117(1): 50–62.
Lenstra, J. K., Rinnooy, A. H. G., and Bruchker, P. 1977. Complexity of machine scheduling problems. In Annals of Discrete Mathematics, vol. 1. North Holland.
Mok, A. K. 1983. Fundamental design problems of distributed systems for hard real-time environments. Ph.D. Thesis, Laboratory for Computer Science, MIT/MIT/LCS. TR-297.
Ramamritham, K., and Stankovic, J. A. 1984. Dynamic task scheduling in hard real-time distributed systems. IEEE Software, 65–75.
Ramamritham, K., Stankovic, J. A., and Shiah, P. 1990. Efficient scheduling algorithms for real-time multipro-cessor systems. IEEE Transactions on Parallel and Distributed Systems 1(2): 184–194.
Schwan, K., and Zhou, H. 1992. Dynamic scheduling of hard real-time tasks and real-time threads. IEEE Transactions on Software Engineering.
Sha, L., Goodenough, J. B., and Ralya, T. 1988. An analytical approach to real-time software engineering. Software Engineering Institute Draft Report.
Shen, C., Ramamritham, K., and Stankovic, J. A. 1993. Resource reclaiming in multiprocessor real-time systems. IEEE Transactions on Parallel and Distributed Systems 4(4).
Sprunt, B., Sha, L., and Lehoczky, J. 1989. Aperiodic task scheduling for hard real-time systems. Journal of Real-Time Systems 1: 27–60.
Sprunt, B., Lehoczky, J., and Sha, L. 1988. Exploiting unused periodic time for aperiodic service using the extended priority exchange algorithms. Proc.of Real-Time Systems Symposium.
Stankovic, J. A., and Ramamritham, K. 1987. The design of the spring kernel. Proc.of the IEEE Real-Time Systems Symposium, pp. 146–157.
Stankovic, J. A., Spuri, M., Natale, M. D., and Buttazzo, G. C. 1995. Implications of classical scheduling results for real-time systems. IEEE Computer 16–25.
Xu, J., and Parnas, D. L. 1993. On satisfying timing constraints in hard-real-time systems. IEEE Transactions on Software Engineering 19(1): 70–84.
Yuan-Geng Huang, H., Kanal, L. N., and Tripathi, S. K. 1989. Scheduling N jobs on one machine with insert-idle-time. Proc.of the Second International Conference on Industrial and Engineering Applications of Artificial Intelligence and Expert Systems. IEA=AIE-89.
Zhao, W., and Ramamritham, K. 1987. Simple and integrated heuristic algorithms for scheduling tasks with time and resource constraints. Journal of Systems and Software.
Zhao, W., Ramamritham, K., and Stankovic, J. A. 1987a. Preemptive scheduling under time and resource constraints. IEEE Transactions on Computers.
Zhao, W., Ramamritham, K., and Stankovic, J. A. 1987b. Scheduling tasks with resource requirements in hard real-time systems. IEEE Transactions on Software Engineering SE-12(5).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Hamidzadeh, B., Atif, Y. & Ramamritham, K. To Schedule or to Execute: Decision Support and Performance Implications. Real-Time Systems 16, 281–313 (1999). https://doi.org/10.1023/A:1008007325129
Issue Date:
DOI: https://doi.org/10.1023/A:1008007325129