dynamic library cost (was RE: libtool, java woes)

Tom Tromey tromey@redhat.com
Thu Apr 12 22:13:00 GMT 2001


>>>>> "Jeff" == Jeff Sturm <jsturm@one-point.com> writes:

Jeff> 1) If I have two shared libraries, both compiled with compatible
Jeff> releases of gcj but targetted to different GC libraries, is
Jeff> there any hope of loading them both into one process image
Jeff> (i.e. running two GC systems concurrently)?

I'm not sure I really understand the question.

Right now I think the answer is `yes', because all the GC calls are
made through _Jv_ wrappers.  We assume a conservative GC all over the
place, so in many other ways these two GCs would have to be very
similar.

I'm assuming you mean you want to load both the objects but only have
one GC in the process.  You can't run more than one GC in the process
and still have the libraries share data; that would require a lot of
new work.

Jeff> 2) If someone really wants pluggable GC (along with somewhat
Jeff> reduced efficiency), would it be practical to define a "generic"
Jeff> GC interface for this purpose?

We've pretty much done this already.  The problem is that this is
slow.

Also, suppose some day we were to implement write barriers in the
compiler.  In this case the write barriers would be compiled into the
code.  For efficiency these would have to be GC-specific.

Tom



More information about the Java mailing list