Volume 12, Issue 8 pp. 667-685
Research Article

Ajents: towards an environment for parallel, distributed and mobile Java applications

Matthew Izatt

Matthew Izatt

Department of Computer Science, York University, Toronto, Ontario, M3J 1P3, Canada

Search for more papers by this author
Patrick Chan

Patrick Chan

Department of Computer Science, York University, Toronto, Ontario, M3J 1P3, Canada

Search for more papers by this author
Tim Brecht

Corresponding Author

Tim Brecht

Department of Computer Science, York University, Toronto, Ontario, M3J 1P3, Canada

Dept. of Computer Science, University of Waterloo, Waterloo, ON, N2L 3G1, CanadaSearch for more papers by this author

Abstract

The rapid proliferation of the World-Wide Web has been due to the seamless access it provides to information that is distributed both within organizations and around the world. In this paper, we describe the design and implementation of a system, called Ajents, which provides the software infrastructure necessary to support a similar level of seamless access to organization-wide or world-wide heterogeneous computing resources.

Ajents introduces class libraries which are written entirely in Java and that run on any standard compliant Java virtual machine. These class libraries implement and combine several important features that are essential to supporting distributed and parallel computing using Java. These features include: the ability to easily create objects on remote hosts, to interact with those objects through either synchronous or asynchronous remote method invocations, and to freely migrate objects to heterogeneous hosts. While some of these features have been implemented in other systems, Ajents provides support for the combination of all of these features using techniques that permit them to operate together in a fashion that is more transparent and/or and less restrictive than existing systems.

Our experimental results show that in our test environment: we are able to achieve good speedup on a sample parallel application; the overheads introduced by our implementation do not adversely affect remote method invocation times; and (somewhat surprisingly) the cost of migration does not greatly impact the execution time of an example application. Copyright © 2000 John Wiley & Sons, Ltd.

The full text of this article hosted at iucr.org is unavailable due to technical difficulties.