This Article 
 Bibliographic References 
 Add to: 
Parametric Dispatching of Hard Real-Time Tasks
March 1995 (vol. 44 no. 3)
pp. 471-479

Abstract—In many real-time systems relative timing constraints are imposed on a set of tasks. Generating a correct ordering for the tasks and deriving their proper start-time assignments is an NP-hard problem; it subsumes the Non-preemptive Scheduling Problem. Even when the application imposes a total order on the tasks, generating proper start-times is still nontrivial if execution times may range between upper and lower bounds.

We present the technique of parametric dispatching to enforce such timing constraints. During an off-line component, we check if the constraints can be guaranteed. If so, a calendar is produced that allows our on-line algorithm to generate upper and lower bounds on the start time of each task, based on the start times and execution times of previous tasks. A suitable start time for the task may then be selected taking into account the presence of other non-critical tasks in the system.

[1] G.B. Dantzig and B.C. Eaves,“Fourier-Motzkin elimination and its dual,” J. Combinatorial Theory (A), vol. 14, pp. 288-297, 1973.
[2] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness.New York: W.H. Freeman, 1979.
[3] C.C. Han and K.J. Lin,“Job scheduling with temporal distance constraints,” Technical Report UIUCDCS-R-89-1560, Univ. of Illinois at Urbana-Champaign, Dept. of Computer Science, 1989.
[4] C.-C. Han and K.-J. Lin, "Scheduling Real-Time Computations with Separation Constraints," Information Processing Letters, vol. 42, May 1992.
[5] M.G. Harmon,T.P. Baker,, and D.B. Whalley,“A retargetable technique for predicting execution time,” Proc. IEEE Real-Time Systems Symp., pp. 68-77, Dec. 1992.
[6] Y. Ishikawa,H. Tokuda,, and C.W. Mercer,“Object-oriented real-timelanguage design: Constructs for timing constraints,” Proc. OOPSLA 90, pp. 289-298, Oct. 1990.
[7] ——,“A graph-theoretic approach for timing analysis and its implementation,”IEEE Trans. Comput., vol. C-36, pp. 961–975, Aug. 1987.
[8] E. Kligerman and A. Stoyenko, "Real-Time Euclid: A Language for Reliable Real-Time Systems," IEEE Trans. Software Eng., vol. 12, no. 9, pp. 940-949, Sept. 1986.
[9] I. Lee and V. Gehlot,“Language constructs for real time programming,” Real Time Systems Symp., pp. 57-66, IEEE Press, 1985.
[10] K.J. Lin and S. Natarajan, “Expressing and Maintaining Timing Constraints in Flex,” Proc. Ninth IEEE Real-Time Systems Symp., pp. 96–105, Dec. 1988.
[11] C.L. Liu and J.W. Layland, “Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment,” J. ACM, vol. 20, no. 1, pp. 40-61, 1973.
[12] V. Nirkhe,S. Tripathi,, and A. Agrawala,“Language support for the Maruti real-time system,” Real-Time Systems Symp., Dec. 1990.
[13] C.Y. Park and A.C. Shaw, "Experiments with a Program Timing Tool Based on Source-Level Timing Schema," Proc. IEEE Real-Time Systems Symp., IEEE, Piscataway, N.J., Dec. 1990, pp. 72-81.
[14] P. Puschner and C. Koza, "Calculating the Maximum Execution Time of Real-Time Programs," J. Real-Time Systems, vol. 1, no. 2, pp. 159-176, Sept. 1989.
[15] K. Ramamritham, J.A. Stankovic, and W. Zhao, “Distributed Scheduling of Tasks with Deadlines and Resource Requirements,” Trans. Computers, vol. 38, no. 8, Aug. 1989.
[16] J. Xu and D.L. Parnas, “Scheduling Processes with Release Times, Deadlines, Precedence and Exclusion Relations,” IEEE Trans. Software Eng., vol. 16, no. 3, pp. 360-369, Mar. 1990.

Index Terms:
Real-time, scheduling, dispatching, operating systems, linear constraints, variable elimination, programming languages.
William Pugh, Richard Gerber, Manas Saksena, "Parametric Dispatching of Hard Real-Time Tasks," IEEE Transactions on Computers, vol. 44, no. 3, pp. 471-479, March 1995, doi:10.1109/12.372041
Usage of this product signifies your acceptance of the Terms of Use.