This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Combined Task and Message Scheduling in Distributed Real-Time Systems
November 1999 (vol. 10 no. 11)
pp. 1179-1191

Abstract—This paper presents an algorithm for off-line scheduling of communicating tasks with precedence and exclusion constraints in distributed hard real-time systems. Tasks are assumed to communicate via message passing based on a time-bounded communication paradigm, such as the real-time channel [1]. The algorithm uses a branch-and-bound (B&B) technique to search for a task schedule by minimizing maximum task lateness (defined as the difference between task completion time and task deadline), and exploits the interplay between task and message scheduling to improve the quality of solution. It generates a complete schedule at each vertex in the search tree, and can be made to yield a feasible schedule (found before reaching an optimal solution), or proceed until an optimal task schedule is found. We have conducted an extensive simulation study to evaluate the performance of the proposed algorithm. The algorithm is shown to scale well with respect to system size and degree of intertask interactions. It also offers good performance for workloads with a wide range of CPU utilizations and application concurrency. For larger systems and higher loads, we introduce a greedy heuristic that is faster but has no optimality properties. We have also extended the algorithm to a more general resource-constraint model, thus widening its application domain.

[1] D.D. Kandlur, K.G. Shin, and D. Ferrari, “Real-Time Communication in Multi-Hop Networks,” IEEE Trans. Parallel and Distributed Systems, vol. 5, no. 10, pp. 1,044-1,056, Oct. 1994.
[2] 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.
[3] T. Shepard and M. Gagne, “A Pre-Run-Time Scheduling Algorithm for Hard Real-Time Systems,” IEEE Trans. Software Eng., vol. 17, no. 7, pp. 669-677, July 1991.
[4] T.F. Abdelzaher and K.G. Shin, “Comment on a Pre-Run-Time Scheduling Algorithm for Hard Real-Time Systems,” IEEE Trans. Software Eng., vol. 23, no. 9, pp. 599–600, Sept. 1997.
[5] J. Xu, “Multiprocessor Scheduling of Processes with Release Times, Deadlines, Precedence, and Exclusion Relations,” IEEE Trans. Software Eng., vol. 19, no. 2, pp. 139-154, Feb. 1993.
[6] D. Peng and K.G. Shin, "Optimal Scheduling of Cooperative Tasks in a Distributed System Using an Enumerative Method," IEEE Trans. Software Eng., vol. 19, no. 3, pp. 253,-267, Mar. 1993.
[7] R. Agne, “A Distributed Offline Scheduler for Distributed Hard Real-Time Systems,” Distributed Computer Control Systems, Proc. 10th IFAC Workshop, pp. 35–40, Sept. 1991.
[8] K. Jeffay, “On Latency Management in Time-Shared Operating Systems,” Real-Time Operating Systems and Software, pp. 86–90, May 1994.
[9] H. Chetto, M. Silly, and T. Bouchentouf, “Dynamic Scheduling of Real-Time Tasks under Precedence Constraints,” J. Real-Time Systems, vol. 2, pp. 181-194, 1990.
[10] M. DiNatale and J. Stankovic, Dynamic End-to-End Guarantees in Distributed Real-Time Systems Proc. Real-Time Systems Symp., pp. 216-227, Dec. 1994.
[11] K. Ramamritham, “Allocation and Scheduling of Complex Periodic Tasks,” Proc. 10th IEEE Int'l Conf. Distributed Computing Systems, 1990.
[12] D.-T. Peng, K.G. Shin, and T.F. Abdelzaher, “Assignment and Scheduling Communicating Periodic tasks in Distributed Real Time Systems,” IEEE Trans. Software Eng., vol. 23, no. 12, pp. 745-758, Dec. 1997.
[13] W.H. Kohler and K. Steiglitz, “Enumerative and Iterative Computational Approach,” Computer and Job-Shop Scheduling Theory, pp. 229–287, 1976.
[14] T. Shepard and M. Gagne, A Model of the F-18 Mission Computer Software for Preruntime Scheduling Proc. 10th Int'l Conf. Distributed Computing Systems, pp. 62-69, 1990.
[15] M. Chen and K. Lin, “Dynamic Priority Ceiling: A Concurrency Control Protocol for Real-Time Systems,” J. Real-Time Systems, vol. 2, no. 1, pp. 325-346, 1990.

Index Terms:
Real-time scheduling, combined task and message scheduling, distributed hard real-time systems, resource constraints, deadlock.
Citation:
Tarek F. Abdelzaher, Kang G. Shin, "Combined Task and Message Scheduling in Distributed Real-Time Systems," IEEE Transactions on Parallel and Distributed Systems, vol. 10, no. 11, pp. 1179-1191, Nov. 1999, doi:10.1109/71.809575
Usage of this product signifies your acceptance of the Terms of Use.