This Article 
 Bibliographic References 
 Add to: 
Scheduling Distributed Real-Time Tasks with Minimum Jitter
April 2000 (vol. 49 no. 4)
pp. 303-316

Abstract—The problem of scheduling real-time tasks with minimum jitter is particularly important in many control applications; nevertheless, it has rarely been studied in the scientific literature. This paper presents a unconventional scheduling approach for distributed static systems where tasks are periodic and have arbitrary deadlines, precedence, and exclusion constraints. The solution presented in this work not only creates feasible schedules, but also minimizes jitter for periodic tasks. We present a general framework consisting of an abstract architecture model and a general programming model. We show how to design a surprisingly simple and flexible scheduling method based on simulated annealing. Experimental results demonstrate the significant improvement of our algorithm over earliest deadline first and rate monotonic algorithms.

[1] E.H.L. Aarts and J.H.M. Korst, Simulated Annealing and Boltzmann Machines. John Wiley&Sons, 1989.
[2] E. Aarts and P. Van Laarhoven, “A New Polynomial Time Cooling Schedule,” Proc. IEEE Conf. Computer-Aided Design, pp. 206-208, 1985.
[3] K.R. Baker et al., “Preemptive Scheduling of a Single Machine to Minimize Maximum Cost Subject to Release Dates and Precedence Constraints,” Operations Research, 1982.
[4] I. Bate, A. Burns, J. McDermid, and A. Vickers, “Towards a Fixed Priority Scheduler for an Aircraft Application,” Proc. Euromicro Workshop Real-Time Systems, 1996.
[5] A. Burns et al., “The Olympus Attitude and Orbital Control System. A Case Study in Hard Real-Time System Design and Implementation,” Technical Report YCS90, Dept. of Computer Science, Univ. of York, 1993.
[6] T. Carpenter, K. Driscoll, K. Hoyme, and J. Carciofini, “ARINC 659 Scheduling: Problem Definition,” Proc. 1994 Real Time Systems Symp., Dec. 1994.
[7] E.G. Coffman and R. Graham, “Optimal Scheduling for Two-Processor Systems,” ACTA Informatica, vol. 1, 1972.
[8] G. Fohler, “Flexibility in Statically Scheduled Hard Real-Time Systems,” Technisch Naturwissenschaftliche Fakultaet, Technische Universitaet Wien, Apr. 1994.
[9] R. Garey and D. Johnson, “Complexity Results for Multiprocessor Scheduling under Resource Constraints,” SIAM J. Computing, 1975.
[10] M.R. Garey, D.S. Johnson, B.B. Simons, and R.E. Tarjan, “Scheduling Unit-Time Tasks with Arbitrary Release Times and Deadlines,” SIAM J. Computing, vol. 10, no. 2, May 1981.
[11] J.R. Jackson, “Scheduling a Production Line to Minimize Maximum Tardiness,” Research Report 43,Management Science Research Project, Univ. of California, Los Angeles, 1955.
[12] D.S. Johnson et al., “Optimization by Simulated Annealing: an Experimental Evaluation,” Proc. Workshop Statistical Physics in Eng. and Biology, Apr. 1984 (revised 1986).
[13] N. Kim, M. Ryu, S. Hong, M. Saksena, C.H. Choi, and H. Shin, “Visual Assessment of a Real-Time System Design: A Case Study on a CNC Controller,” Proc. IEEE Real-Time Systems Symp., pp. 300-310, Dec. 1996.
[14] S. Kirkpatrick et al., “Optimization by Simulated Annealing: Quantitative Studies,” J. Statistics of Physics, vol. 34, 1984.
[15] E.L. Lawler, “Optimal Sequencing of a Single Machine Subject to Precedence Constraints,” Management Science, vol. 19, 1973.
[16] E.L. Lawler, “Recent Results in the Theory of Machine Scheduling,” Math. Programming: The State of the Art, A. Bachen et al., eds. New York: Springer-Verlag, 1983.
[17] J.K. Lenstra, A.H.G. Rinnooy Kan, “Optimization and Approximation in Deterministic Sequencing and Scheduling: A Survey,” Annals of Discrete Math., vol. 5, pp. 287-326, 1977.
[18] J. Leung and J. Whitehead, “On the Complexity of Fixed Priority Scheduling of Periodic, Real-Time Tasks,” Performance Evaluation, vol. 2, no. 4, pp. 237-250, 1982.
[19] 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.
[20] C.D. Locke, Softwre Architecture for Hard Real-time Applications: Cyclic Executives vs. Fixed Priority Executives J. Real-Time Systems, vol. 4, pp. 37-53, 1992.
[21] R. McNaughton, “Scheduling with Deadlines and Loss Functions,” Management Science, vol. 6, 1959.
[22] D. Mitra et al., “Convergence and Finite-Time Behavior of Simulated Annealing,” Proc. 24th Conf. Decision and Control, Dec. 1985.
[23] A.K. Mok, “Fundamental Design Problems of Distributed Systems for the Hard-Real-Time Environment,” PhD thesis, Dept. of Electrical Eng. and Computer Science, Massachusetts Inst. of Technology, Cambridge, Mass., May 1983.
[24] J. Moore, “An n Job, One Machine Sequencing Algorithm for Minimizing the Number of Late Jobs,” Management Science, vol. 15, no. 1, pp. 102-109, Sept. 1968.
[25] K. Ramamritham, “Allocation and Scheduling of Precedence-Related Periodic Tasks,” IEEE Trans. Parallel and Distributed Systems, vol. 6, no. 4, pp. 412-420, Apr. 1995.
[26] K. Ramamritham, J. Stankovic, and P. Shiah, “Efficient Scheduling Algorithms for Real-Time Multiprocessor Systems,” IEEE Trans. Parallel and Distributed Systems, vol. 1, no. 2, Apr. 1990.
[27] J.A. Stankovic, M. Spuri, M. Di Natale, and G. Buttazzo, “Implications of Classical Scheduling Results for Real-Time Systems,” IEEE Computer, vol. 28, no. 6, June 1995.
[28] K. Tindell, “Adding Time Offsets to Schedulability Analysis” Technical Report YCS 221, Dept. of Computer Science, Univ. of York, year?
[29] K. Tindell, A. Burns, and A. Wellings, “Allocating Hard Real-Time Tasks: An NP-Hard Problem Made Easy,” J. Real-Time Systems, vol. 4, no. 2, pp. 145-166, May 1992.
[30] J.D. Ullman, “Polynomial Complete Scheduling Problems,” Proc. Fourth Symp. Operating System Principles, 1973.
[31] 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.
[32] J. Xu and D. Parnas, “On Satisfying Timing Constraints in Hard Real-Time Systems,” Proc. ACM SIGSOFT 91 Conf. Software for Critical Systems, Dec. 1994.

Index Terms:
Real-time, scheduling, distributed systems, simulated annealing, jitter.
Marco Di Natale, John A. Stankovic, "Scheduling Distributed Real-Time Tasks with Minimum Jitter," IEEE Transactions on Computers, vol. 49, no. 4, pp. 303-316, April 2000, doi:10.1109/12.844344
Usage of this product signifies your acceptance of the Terms of Use.