FINAL PROJECT: Common Virtual Machine Interface
Andrew John Hughes
gnu_andrew at member.fsf.org
Mon Aug 4 23:57:23 PDT 2008
This e-mail constitutes the submission of the CVMI project for the
OpenJDK challenge. The main source of documentation for this project
and the two Mercurial repositories:
The first repository contains an OpenJDK tree with changes made in
experimentation with a new CVMI variant. At present, this is just a
proof of concept, java.lang.Object/java.lang.VMObject as there is
still more work to be done in this area.
The second contains a port of JamVM to the OpenJDK VM interface. This
is nearly at the point of being able to start a HelloWorld application
(it gets as far as trying to load in some of the non-existent VM
methods in OpenJDK, having initialised JNI, threads, etc.). Changes
on the CVMI port will hopefully complete this work.
I'd like to close this mail by thanking Sun and the OpenJDK community
for the opportunity to participate in this challenge. I had hoped to
produce more in the way of code, but time has unfortunately not been
on my side. However, I feel much more benefit has been gained from
having the opportunity to work on the OpenJDK codebase and that the
documentation I have produced so far and my own expanded knowledge
will turn out to be the more valuable product of this challenge.
Back at the start of the challenge period, I had very little knowledge
of the OpenJDK source code. Since then, I have also worked a lot with
the IcedTea hackers, patching and building this code base and although
this isn't an explicit product of this challenge, this has resulted in
an up-to-date IcedTea tree for JDK7, thus easing the process of
working on OpenJDK and allowing further experimentation with new
My hope is that this project can continue post-challenge, and that the
end of this period will now allow others to get involved and truly
produce a VM interface we can all benefit from.
Support Free Java!
Contribute to GNU Classpath and the OpenJDK
PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8
More information about the cvmi-dev