harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Geir Magnusson Jr <g...@pobox.com>
Subject Re: [drlvm] using the harmony launcher
Date Wed, 12 Jul 2006 22:04:46 GMT
Andrey Chernyshev wrote:
> With some changes I was able to run the DRLVM with classlib's
> launcher. Here is what I did (you can see the experimental patch at
> http://issues.apache.org/jira/browse/HARMONY-857):

This is very cool.  Why experimental?  what is the big problem if we
accept it and go on from there?

[SNIP]

> 
> (1)
> DRLVM startup is organized a bit differently compared to the classlib
> launcher startup, namely – the DRLVM after creating VM runs a special
> class called VMStart which is, in it's turn, asynchronously calling
> the main() method of the user application in a separate thread.
> When we go with the classlib's launcher, the main() method is executed
> in the same thread where the JavaVM is created.
> What are the caveats with that?

And why is that?

[SNIP]


> (4)
> Launcher wants the vm dll in the "default" directory unless the option
> is specified. Should we realign the drlvm build output and move all
> dll's into the "default" subdir?

I think so.

> 
> (5)
> What to do with the "_org.apache.harmony.vmi.portlib" option that
> launcher is offering to VM?
> 
> Most likely there are more issues that I'm overlooking at the moment.
> Please consider the suggested patch is a workaround to make the things
> working, I'm wondering if there is a more graceful way to do this.

It's better that what we have, and we can just build on from here...

geir

> 
> Thanks,
> Andrey.
> 
> 
> On 7/11/06, Andrey Chernyshev <a.y.chernyshev@gmail.com> wrote:
>> OK, so I'm going to add CreateJavaVM  into vm\vmcore\src\jni\jni.cpp
>> and also add implementation into DestroyVM (stub is already seem to be
>> present there) based on destroy_vm(). Then we'll see how it works with
>> the launcher.
>>
>> Thanks,
>> Andrey.
>>
>>
>> On 7/11/06, Geir Magnusson Jr <geir@pobox.com> wrote:
>> > This has been my thinking - even if not perfect, lets get it working
>> > using the launcher and then fix as required.  It's arguable if that
>> > "brokenness" matters at this point, and I think that there's plenty to
>> > be gained from having it work via the launcher.
>> >
>> > geir
>> >
>> > Rana Dasgupta wrote:
>> > > create_vm() looks quite close/complete to being a complete
>> prototype for
>> > > CreateJavaVM,
>> > > but I think more work is needed in DestroyVM which prototypes
>> DestroyJavaVM
>> > > for functional completeness. It is non waiting on user threads, it
>> does not
>> > > send the corresponding JVMTI shutdown events, I also don't know if it
>> > > handles shutdown hooks cleanly ( but these "may" not be critical
>> right now
>> > > for hooking up to the launcher ). What do you think?
>> > >
>> > > When I ran a non trivial test.. upto 32 threads instantiating a
>> very large
>> > > number of objects  with            -XcleanupOnExit which uses
>> DestroyVM, it
>> > > exited cleanly. Maybe OK to hookup and fix bugs as we go.
>> > >
>> > > Thanks,
>> > > Rana
>> > >
>> > >
>> > > On 7/10/06, Andrey Chernyshev <a.y.chernyshev@gmail.com> wrote:
>> > >
>> > >> >Yes, it seems like the launcher will need at least JNI_CreateJavaVM
>> > >> >and DestroyJavaVM functions.
>> > >>
>> > >> >I couldn't find implementation for CreateJavaVM in drlvm codebase.
>> > >> >Perhaps create_vm() function in vm\vmcore\src\init\vm_main.cpp
>> can be
>> > >> >adopted for that purpose?
>> > >> >Is there are any tricks and caveats one should be aware of before
>> > >> >trying to produce CreateJavaVM from it?
>> > >>
>> > >> >I've also seen a prototype for DestroyJavaVM in
>> > >> >vm\vmcore\src\init\vm.cpp - comment says it needs to be improved
to
>> > >> >wait till all Java threads are completed.
>> > >>
>> > >> >Any more ideas what needs to be done to implement those?
>> > >>
>> > >> >Thanks,
>> > >> >Andrey.
>> > >>
>> > >>
>> > >>
>> ---------------------------------------------------------------------
>> > >> Terms of use : http://incubator.apache.org/harmony/mailing.html
>> > >> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
>> > >> For additional commands, e-mail:
>> harmony-dev-help@incubator.apache.org
>> > >>
>> > >>
>> > >
>> >
>> > ---------------------------------------------------------------------
>> > Terms of use : http://incubator.apache.org/harmony/mailing.html
>> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
>> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>> >
>> >
>>
>>
>> -- 
>> Andrey Chernyshev
>> Intel Middleware Products Division
>>
> 
> 

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message