CPU resource control for mobile programs

There is considerable interest in developing runtime infrastructures for programs that can migrate from one host to another. Mobile programs are appealing because they support efficient utilization of network resources and extensibility of information servers. This paper presents a scheduling scheme for allocating resources to a mix of real-time and non real-time mobile programs. Within this framework, both mobile programs and hosts can specify constraints on how CPU should be allocated. On the basis of the constraints, the scheme constructs a scheduling graph on which it applies several scheduling algorithms. In case of conflicts between mobile program and host specified constraints, the schemes implement a policy that resolves the conflicts in favor of the host. The resulting scheduling scheme is adaptive, flexible, and enforces both program and host specified constraints.

[1]  Carl A. Waldspurger,et al.  Stride Scheduling: Deterministic Proportional- Share Resource Management , 1995 .

[2]  Harrick M. Vin,et al.  A hierarchial CPU scheduler for multimedia operating systems , 1996, OSDI '96.

[3]  Judy Kay,et al.  A fair share scheduler , 1988, CACM.

[4]  Ken Arnold,et al.  The Java Programming Language , 1996 .

[5]  Thomas L. Casavant,et al.  A Taxonomy of Scheduling in General-Purpose Distributed Computing Systems , 1988, IEEE Trans. Software Eng..

[6]  Michael B. Jones,et al.  CPU reservations and time constraints: efficient, predictable scheduling of independent activities , 1997, SOSP.

[7]  Aaron Kershenbaum,et al.  Mobile Agents: Are They a Good Idea? , 1996, Mobile Object Systems.

[8]  Daniela Rus,et al.  Economic Markets as a Means of Open Mobile-Agent Systems , 1999 .

[9]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[10]  William E. Weihl,et al.  Lottery scheduling: flexible proportional-share resource management , 1994, OSDI '94.

[11]  Daniela Rus,et al.  Market-based resource control for mobile agents , 1998, AGENTS '98.

[12]  G. J. Henry,et al.  The UNIX system: The fair share scheduler , 1984, AT&T Bell Laboratories Technical Journal.

[13]  Hongyi Zhou,et al.  Dynamic Scheduling of Hard Real-Time Tasks and Real-Time Threads , 1992, IEEE Trans. Software Eng..

[14]  David K. Gifford,et al.  Remote evaluation , 1990, TOPL.

[15]  Margo I. Seltzer,et al.  Dealing with disaster: surviving misbehaved kernel extensions , 1996, OSDI '96.

[16]  Christian F. Tschudin,et al.  Open Resource Allocation for Mobile Code , 1997, Mobile Agents.

[17]  Thorsten von Eicken,et al.  JRes: a resource accounting interface for Java , 1998, OOPSLA '98.

[18]  Benjamin W. Wah,et al.  Computer scheduling algorithms: Past, present and future , 1991, Inf. Sci..

[19]  T. S. West New Frontiers , 1968, Nature.

[20]  Uresh K. Vahalia UNIX Internals: The New Frontiers , 1995 .

[21]  Bryan Ford,et al.  CPU inheritance scheduling , 1996, OSDI '96.

[22]  Harrick M. Vin,et al.  A hierarchial CPU scheduler for multimedia operating systems , 1996, OSDI '96.

[23]  Frank Yellin,et al.  The Java Virtual Machine Specification , 1996 .

[24]  Troy Downing,et al.  Java Virtual Machine , 1997 .

[25]  Jason Nieh,et al.  The design, implementation and evaluation of SMART: a scheduler for multimedia applications , 1997, SOSP.

[26]  Tommy Thorne,et al.  Programming languages for mobile code , 1997, CSUR.