Linked by Thom Holwerda on Wed 10th Oct 2012 23:47 UTC, submitted by MOS6510
Thread beginning with comment 538259
To view parent comment, click here.
To read all comments associated with this story, please click here.
To view parent comment, click here.
To read all comments associated with this story, please click here.
moondevil,
"Graal is the project to integrate Maxime JIT which is 100% Java code."
I wasn't aware, that's very interesting. I wonder how you bootstrap such a thing. Do you need another VM to bootstrap the Maxime JIT's code?
Nice diagram for a project you mentioned:
http://labs.oracle.com/projects/squawk/squawk-rjvm.html
"Even with VM exploits it depends on which VM you are using, there are many more out there, besides Oracle's."
I'm not ready to stop calling it Sun's VM 
Graal:
http://openjdk.java.net/projects/graal/
http://www.oracle.com/technetwork/java/javase/community/jvmls2012-1...
Graal is based on Maxime's work,
https://wikis.oracle.com/display/MaxineVM/Home
I wasn't aware, that's very interesting. I wonder how you bootstrap such a thing. Do you need another VM to bootstrap the Maxime JIT's code?
In a way yes.
This paper provides a nice overview how bootstraping works,
https://wikis.oracle.com/display/MaxineVM/Technical+Report
The idea is quite simple, you use the JIT compiler offline to generate the basic VM image for the classes that take care of the VM ground work.
The compiler recognises special annotations that allow trusted Java code to perform unsafe operations, this minimizes the requirements to native methods.
Additionally you have a thin layer for the native methods.
Another example is the Jikes RVM,
http://jikesrvm.org/Presentations
What I miss is that the official JDK still lacks an AOT compiler, while other vendors do offer them. It is not easy to convince project managers to pay for native code compilers for Java, unless the project really requires them.
I'm not ready to stop calling it Sun's VM
I used to write Sun/Oracle VM in the last months, but one needs to face the sad reality that Sun is gone.




Member since:
2005-07-08
At least in OpenJDK/JVM this might improve when project Graal gets integrated.
Graal is the project to integrate Maxime JIT which is 100% Java code.
The idea is to follow Jikes, Maxime and Squawk VM projects where the Java was used to write the VM, with a very minimal set of native code.