harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robin John Garner" <robin.gar...@anu.edu.au>
Subject Re: I hope the JVM implements most using Java itself
Date Wed, 11 May 2005 14:34:26 GMT
> Yes, and this brings up an important point: the VM should be designed
> to allow code execution to easily transfer between compiled C/C++ code
> and JIT'd (or whatever) Java code. This is in some sense already a
> requirement anyway because of things like user-defined class loaders.

This is a tricky issue.  One of the nice things about gcj is the CNI
interface between Java and C++ - the ability to switch seamlessly between
Java and C++ is great when interfacing code written in both languages. 
This  does however come at a cost.

Firstly, the inherent safety of Java means that you can use memory
management techniques (copying garbage collectors) with the accompanying
performance advantages.  While it is possible to do copying collection in
a restricted subset of C/C++ if you have the necessary compiler support,
this isn't exactly the seamless integration that is desired here.

Secondly, JIT compilers have various performance advantages over their
ahead-of-time peers, and in particular library code can be inlined into
user applications at run time.  This advantage is lost when crossing a
language boundary (unless the C compiler can emit Java bytecode :-).


View raw message