Communicator e3000 MPE/iX Release 7.0 Express 1 (Software Release C.70.01) (30216-90328)
Chapter 5 121
Technical Articles
Introducing the HotSpot Virtual Machine for Java
Introducing the HotSpot Virtual Machine for Java
by Mike Yawn, Commercial Systems Division
The implementation of Java on the HP e3000 just got a lot faster thanks to the new
technology included in the HotSpot Virtual Machine. The HotSpot VM is a completely
compatible alternative to the Classic Java Virtual Machine. The latest Software
Developer’s Kit (SDK) for Java, which is included with this release, contains both the
HotSpot and the Classic JVMs
What’s new?
The primary advantage of the HotSpot VM is performance. Benchmarks show typical
performance improvements of from 2 to 5 times when using the HotSpot VM compared to
the ‘Classic’ virtual machine shipped in all versions of Java to date.
HotSpot VM Features
• Performanc
Faster interpreter than the Classic Java VM
HotSpot compiler is more selective about what code to compile, and then compiles
selected code to higher levels of optimization than JIT compilers
Better garbage collection and thread synchronization performance
• Better scaleability on multiprocessor systems
• Improved reliability
• Platform for future performance improvements
What’s included
The HotSpot and Classic JVMs both co-exist in this release of Java. In a future release,
the Classic JVM will be dropped and HotSpot will be the only JVM provided. There were
changes made to the Java directory structure beginning in JDK 1.2 in order to support the
eventual release of HotSpot.
Java is installed in a directory location beginning with
/usr/local/java/jdk1.3
The portions of Java that change with hotspot are two libraries, libjvm (the Java VM) and
libhpi (the Host Porting Interface). The Classic versions of these files are in the following
locations:
/usr/local/java/jdk1.3/jre/lib/PA-RISC/classic/libjvm.sl
/usr/local/java/jdk1.3/jre/lib/PA-RISC/green_threads/libhpi.sl
The HotSpot versions of the same two files are located here:
/usr/local/java/jdk1.3/jre/lib/PA-RISC/hotspot/libjvm.sl
/usr/local/java/jdk1.3/jre/lib/PA-RISC/native_threads/libhpi.sl