Re: [rvm-research] Curious about OpenJDK on JikesRVM

Erik Brangs <[email protected]>
Newsgroups gmane.comp.java.jikes.rvm.devel
Message-ID <[email protected]>
Hi,

On 14.08.2013 19:03, Xi Yang wrote:
> Look at Section 3.4 in  Maxine: An Approachable Virtual Machine For,
> and In, Java (https://wikis.oracle.com/display/MaxineVM/TACO+Journal+Paper)

Thanks for the link.

> I have to implement same features in Jikes to substitution of JDK
> Methods. Then, I can reuse their Maxine's JDK methods.

This sounds like it could be also useful for GNU Classpath. For example,
we overwrite VMChannel, ReferenceQueue and VMAccessController with
modified versions from libraryInterface/GNUClasspath/LGPL.

What's your view on libraryInterface/Common? We currently overwrite
classes such as java.lang.Class that are provided by both GNU Classpath
and OpenJDK. With substitution of JDK methods implemented, would it make
sense to drop these kinds of classes from libraryInterface/Common (i.e.
everything expect VM* classes and sun.misc.Unsafe)? We could use
substitution classes specific to each class library and extract the
common code to newly-created shared classes in libraryInterface/Common.

> So, the source code I reuse is limited in libraryInterface directory,
> and I have to modify main Jikes too, but not using the code from
> Maxine.

That's good to hear. Using GPL code with (or consulting it for an
implementation of) EPL code is disallowed by both licenses. We can only
use GNU Classpath and the OpenJDK libraries because of the Classpath
exception to the GPL. AFAIK the core codebase of Maxine does not have
the Classpath exception (i.e. it is "plain" GPL).

I suppose the final diff for OpenJDK support will be quite large.
Unfortunately, large diffs make merging quite hard for various reasons.
If you have some changes that can be merged and tested independently
(e.g. related to the substition support), don't hesitate to provide
patches now.

I appreciate your continued work on OpenJDK support.


Kind regards,

Erik Brangs

------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead. 
Download for free and get started troubleshooting in minutes. 
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.