In this paper, we present the design and implementation of a novel model of distributed computing on the Internet and Intranet environment. Our model is called the Distributed Java Machine (DJM). It is a global distributed virtual machine used to realize the concept of 'network is the computer'. DJM
A distributed implementation of a virtual machine for Java
β Scribed by Yariv Aridor; Michael Factor; Avi Teperman
- Publisher
- John Wiley and Sons
- Year
- 2001
- Tongue
- English
- Weight
- 188 KB
- Volume
- 13
- Category
- Article
- ISSN
- 1532-0626
- DOI
- 10.1002/cpe.565
No coin nor oath required. For personal study only.
β¦ Synopsis
Abstract
The cluster virtual machine (VM) for Java provides a single system image of a traditional Java Virtual Machine (JVM) while executing in a distributed fashion on the nodes of a cluster. The cluster VM for Java virtualizes the cluster, supporting any pure Java application without requiring that application be tailored specifically for it. The aim of our cluster VM is to obtain improved scalability for a class of Java Server Applications by distributing the application's work among the cluster's computing resources. The implementation of the cluster VM for Java is based on a novel object model which distinguishes between an application's view of an object (e.g. every object is a unique data structure) and its implementation (e.g. objects may have consistent replications on different nodes). This enables us to exploit knowledge on the use of individual objects to improve performance (e.g. using object replications to increase locality of access to objects).
We have already completed a prototype that runs pure Java applications on a cluster of NT workstations connected by a Myrinet fast switch. The prototype provides a single system image to applications, distributing the application's threads and objects over the cluster. We used the cluster VM to run, without change, a real Java Server Application containing over 10 KlocKloc means Kilo lines of codeβused to describe the size of applications in terms of source lines count.
for the source code and achieved high scalability for it on a cluster. We also achieved linear speedup for another application with a large number of independent threads. This paper discusses the architecture and implementation of the cluster VM. It focuses on achieving a single system image for a traditional JVM on a cluster while describing, in short, how we aim to obtain scalability. Copyright Β© 2001 John Wiley & Sons, Ltd.
π SIMILAR VOLUMES
Virtual machines for remote execution are a useful tool for utilizing light user interfaces and intensive application cores in different physical machines connected through the Internet. In a virtual machine, application cores are distributed in a network. Specific locations, operating systems and h
A directory service keeps track of the location and status of mobile objects in a distributed system. This paper describes our experience implementing two distributed directory protocols as part of the Aleph toolkit, a distributed shared object system implemented in Java. One protocol is a conventio
Harness is an experimental metacomputing system based upon the principle of dynamically reconfigurable, object-oriented, networked computing frameworks. Harness supports reconfiguration not only in terms of the computers and networks that comprise the virtual machine, but also in the capabilities of