Marco Buschini and I designed and implemented a package that allows to
dynamically link classes with a location transparent scheme.
Currently available mobile code systems typically rely on location based
mechanisms, where classes are downloaded dynamically from a code repository
whose location is assumed to be known. Clearly, this scheme becomes impractical
in situations where the code repository may become unavailable, or whose
location may not be known in advance. Mobile computing defines such a scenario.
Moreover, sometimes even if the code repository is available, it may be more
practical to download the needed class from a closer source. This is the case of
mobile agents, where a location based scheme greatly reduces the autonomy of
agents.
Our package relies on the Lime
middleware to provide location transparency. Lime is a coordination middleware
based on Linda-like tuple spaces. Effectively, by using Lime we change the µCode
class space and make it distributed and dynamically reconfiguring.
For more information, see the paper:
Gian Pietro Picco and Marco L. Buschini. "Exploiting Transiently Shared Tuple Spaces for Location Transparent Code Mobility".
In Proceedings of the 5th International Conference on Coordination Models and Languages (COORDINATION 2002), York (UK), F. Arbab and C. Talcott, eds., April 2002.
The package implementing location transparent code mobility on top of Lime and µCode is available on as is basis. Eventually, it will become integrated in the CVS tree.
Download the package (~18 Kbytes)