1 The Harness Metacomputing Framework
Abstract:
Abstract Metacomputing frameworks have received renewed attention of late, fueled both by advances in hardware and networking, and by novel concepts such as computational grids. However these frameworks are often inflexible, and force the application into a fixed environment rather than trying to adapt to the application's needs. Harness is an experimental metacomputing framework based upon the principle of dynamic reconfigurability not only in terms of the computers and networks that comprise the virtual machine, but also in the capabilities of the virtual machine itself. This fundamental characteristic of Harness is intended to address the inflexibility of current metacomputing frameworks as well as their incapability to incorporate new technologies and avoid rapid obsolescence. The reconfigurability of Harness derives from a user controlled, distributed "plug-in " mechanism that is a central feature of the system. In this paper we describe how the design of the Harness system allows the dynamic configuration and reconfiguration of distributed virtual machines. Then we show how the framework deals with distributed virtual machines naming and addressing methods, as well as plug-in location, loading, validation, and synchronization methods. Finally we provide some examples services and applications and we discuss our experience in programming applications and services within the Harness metacomputing framework.

