Dynamic scheduling of distributed method invocations

Distributed method invocations require dynamic scheduling algorithms and efficient resource projections to provide timeliness guarantees to application objects. In this paper, we present a dynamic scheduling algorithm that examines the computation times, real times and resource requirements of the application tasks to determine a feasible schedule for the method invocations. The schedule is driven by the laxities of the tasks and the importance that the tasks have to the system. Tasks span processor boundaries, and request messages carry scheduling parameters (laxity values) from one processor to another, yielding a system-wide scheduling algorithm that requires only local computations. Experimental results validate our scheduling algorithm, and show that it has minimal overhead.

[1]  Aloysius K. Mok,et al.  Multiprocessor On-Line Scheduling of Hard-Real-Time Tasks , 1989, IEEE Trans. Software Eng..

[2]  Hideyuki Tokuda,et al.  A Time-Driven Scheduling Model for Real-Time Operating Systems , 1985, RTSS.

[3]  Klara Nahrstedt,et al.  QoS-aware resource management for distributed multimedia applications^{1} , 1998, J. High Speed Networks.

[4]  Daniel Mossé,et al.  Real-time scheduling using compact task graphs , 1996, Proceedings of 16th International Conference on Distributed Computing Systems.

[5]  Edgar Nett,et al.  Monitoring distributed real-time activities in DCOM , 2000, Proceedings Third IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC 2000) (Cat. No. PR00607).

[6]  Michael B. Jones,et al.  Vassal: loadable scheduler support for multi-policy scheduling , 1998 .

[7]  Krithi Ramamritham,et al.  The Spring kernel: a new paradigm for real-time operating systems , 1989, OPSR.

[8]  Andrea Bondavalli,et al.  Scheduling solutions for supporting dependable real-time applications , 2000, Proceedings Third IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC 2000) (Cat. No. PR00607).

[9]  Louise E. Moser,et al.  Dynamic scheduling for soft real-time distributed object systems , 2000, Proceedings Third IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC 2000) (Cat. No. PR00607).

[10]  Tarek F. Abdelzaher,et al.  An automated profiling subsystem for QoS-aware services , 2000, Proceedings Sixth IEEE Real-Time Technology and Applications Symposium. RTAS 2000.

[11]  Ragunathan Rajkumar,et al.  Cooperative scheduling of multiple resources , 1999, Proceedings 20th IEEE Real-Time Systems Symposium (Cat. No.99CB37054).

[12]  Louise E. Moser,et al.  Using multiple feedback loops for object profiling, scheduling and migration in soft real-time distributed object systems , 1999, Proceedings 2nd IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'99) (Cat. No.99-61702).

[13]  Kwei-Jay Lin,et al.  Implementing a general real-time scheduling framework in the RED-Linux real-time kernel , 1999, Proceedings 20th IEEE Real-Time Systems Symposium (Cat. No.99CB37054).

[14]  Azer Bestavros,et al.  Load Profiling in Distributed Real-Time Systems , 1997, Information Sciences.

[15]  Kang G. Shin,et al.  Transparent load sharing in distributed systems: decentralized design alternatives based on the Condor package , 1994, Proceedings of IEEE 13th Symposium on Reliable Distributed Systems.

[16]  John P. Lehoczky,et al.  Fixed priority scheduling periodic tasks with varying execution priority , 1991, [1991] Proceedings Twelfth Real-Time Systems Symposium.

[17]  Scott A. Brandt,et al.  A dynamic quality of service middleware agent for mediating application resource usage , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).