Other Technologies for Mobile Agents

Telescript

Java is not unique in supporting mobile agents. General Magic's Telescript [Tel96] as one of the first mobile agent platforms. Many of the more complicated issues of mobile agents have been carefully considered in the design of Telescript. The Telescript language handles portability and network communication. Server security is implemented both physically (restricted execution environments) and socially (signed code). Telescript contains an explicit model of resource consumption, at least for CPU time. However, the crucial limitation of Telescript is its lack of deployment. General Magic has chosen a proprietary approach, giving out very few specifications and making access to their implementations difficult. Even if Telescript is as good as their papers indicate, it will not matter if no one ever uses it.

Inferno

Lucent Technologies has recently entered the distributed computation arena with Inferno, a network operating system based on Plan 9 [Inf96]. Beta versions of Inferno are now shipping for several operating systems under a restricted test license. Limbo, the language developed for Inferno, resembles a version of C augmented with abstract data types. Limbo itself seems unnecessarily limited in not supporting inheritance. However, the Inferno system is capable of running other languages; a version of Java in Inferno is underway. Inferno presents itself foremost as an operating system, thereby directly addressing questions of security. The underlying abstractions of Plan 9 should nicely support sophisticated resource access control for individual agents. Running Java on top of Inferno could combine the security features of Inferno with the acceptance of the Java programming language; whether such a union is necessary or desirable remains to be seen. In general, Inferno is too new to know what impact it will have on mobile agents.

ActiveX

Microsoft's ActiveX could also be useful technology for building mobile agents [Act96]. ActiveX is essentially a version of the OLE distributed object system with some enhancements to allow ``controls'' (ActiveX objects) loaded over the Internet. The major limitation of ActiveX is that it contains absolutely no physical security provisions: ActiveX controls are pure object code with no restrictions. Microsoft has opted to rely entirely on social enforcement to protect computers from malicious software. Furthermore, because ActiveX controls are object code they are not portable. While Microsoft has promised ActiveX support for the Macintosh, portability between Windows and Macintosh controls (or to Unix systems) seems unlikely. ActiveX has the virtue of running today and being reasonably open. It should be considered seriously because of the market power of Microsoft and the relative ease of developing ActiveX controls. But ActiveX lacks several of the necessary components to be an effective mobile agent environment.


next up previous
Next: Next Steps for Advancing Up: Computational Media for Mobile Previous: Java as Technology Base

Formatted: Wed Jun 11 16:51:02 EDT 1997
Nelson Minar