Research Article
The design and implementation of a modular and extensible Java Virtual Machine
Article first published online: 5 JAN 2004
DOI: 10.1002/spe.565
Copyright © 2003 John Wiley & Sons, Ltd.
Additional Information
How to Cite
Doyle, P., Cavanna, C. and Abdelrahman, T. S. (2004), The design and implementation of a modular and extensible Java Virtual Machine. Software: Practice and Experience, 34: 287–313. doi: 10.1002/spe.565
Publication History
- Issue published online: 13 FEB 2004
- Article first published online: 5 JAN 2004
- Manuscript Accepted: 11 JUL 2003
- Manuscript Revised: 10 JUL 2003
- Manuscript Received: 11 SEP 2002
Funded by
- NSERC
- CITO
- Abstract
- References
- Cited By
Keywords:
- Java Virtual Machines (JVMs);
- modular and extensible design;
- JVM infrastructures;
- design for scalability
Abstract
This paper describes the design, implementation, and experimental evaluation of a modular and extensible Java™ Virtual Machine (JVM) infrastructure, called Jupiter. The infrastructure is intended to serve as a vehicle for our research on scalable JVM architectures for a cluster of PC workstations, with support for shared memory in software. Jupiter is constructed, using a building block architecture, out of many modules with small, simple interfaces. This flexible structure, similar to UNIX® shells that build complex command pipelines out of discrete programs, allows the rapid prototyping of our research ideas by confining changes in JVM design to a small number of modules. In spite of this flexibility, Jupiter delivers good performance. Experimental evaluation of the current implementation of Jupiter using the SPECjvm98 and the EPCC Java Grande single-threaded and multithreaded benchmarks reflects competitive performance. Jupiter is on average about 2.5 times faster than Kaffe and about 2 times slower than the Sun Microsystems JDK (interpreter versions only). By providing a flexible JVM infrastructure that delivers competitive performance, we believe we have developed a framework that supports further research into JVM scalability. Copyright © 2003 John Wiley & Sons, Ltd.

1097-024X/asset/olbannerleft.jpg?v=1&s=2d7d001211f2c40f177a231141601e9f52afc1f3)
1097-024X/asset/olbannerright.jpg?v=1&s=3aec7891a8ba78b361ead9743adfc0b6eae6369a)
1097-024X/asset/cover.gif?v=1&s=5a70ecca2928358eca4ff75b9921d0552ffb6539)