Preemptable remote execution facilities for the V-system

A remote execution facility allows a user of a workstation-based distributed system to offload programs onto idle workstations, thereby providing the user with access to computational resources beyond that provided by his personal workstation. In this paper, we describe the design and performance of the remote execution facility in the V distributed system, as well as several implementation issues of interest. In particular, we focus on network transparency of the execution environment, preemption and migration of remotely executed programs, and avoidance of residual dependencies on the original host. We argue that preemptable remote execution allows idle workstations to be used a a "pool of processors" without interfering with use by their owners and without significant overhead for the normal execution of programs. In general, we conclude that the cost of providing preemption is modest compared to providing a similar amount of computation service by dedicated "computation engines".

[1]  Yogen K. Dalal,et al.  Pilot: an operating system for a personal computer , 1980, CACM.

[2]  Barton P. Miller,et al.  Process migration in DEMOS/MP , 1983, SOSP '83.

[3]  Erik James Gilbert Algorithm partitioning tools for a high-performance multiprocessor , 1982 .

[4]  Daniel H. Craft,et al.  Resource management in a decentralized system , 1983, SOSP '83.

[5]  R. Marcogliese,et al.  Module and Data Allocation Methods in Distributed Systems , 1981, ICDCS.

[6]  Jacob A. Abraham,et al.  Load Balancing in Distributed Systems , 1982, IEEE Transactions on Software Engineering.

[7]  William Ian Nowicki Partitioning of function in a distributed graphics system (computer networks, operating, window) , 1985 .

[8]  Hubert D. Kirrmann,et al.  Poolpo - A Pool of Processors for Process Control Applications , 1984, IEEE Trans. Computers.

[9]  John F. Shoch,et al.  The “worm” programs—early experience with a distributed computation , 1982, CACM.

[10]  A. J. Herbert The Cambridge Distributed Computing System , 1983, Advanced Course: Local Area Networks.

[11]  Jean-Pierre Courtiat,et al.  REBUS, A Fault-Tolerant Distributed System for Industrial Real-Time Control , 1982, IEEE Transactions on Computers.

[12]  David R. Cheriton The V Kernel: A Software Base for Distributed Systems , 1984, IEEE Software.

[13]  Keith A. Lantz,et al.  Structured Graphics for Distributed Systems , 1984, TOGS.

[14]  Nowicki Partitioning of function in a distributed graphics system. Technical report , 1985 .

[15]  Willy Zwaenepoel,et al.  File access performance of diskless workstations , 1986, TOCS.

[16]  Willy Zwaenepoel,et al.  Distributed process groups in the V Kernel , 1985, TOCS.