harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xiao-Feng Li" <xiaofeng...@gmail.com>
Subject Re: Architecture Questions - Moving to JreLite
Date Wed, 05 Mar 2008 02:23:38 GMT
On Wed, Mar 5, 2008 at 9:50 AM, Johnny Kewl <john@kewlstuff.co.za> wrote:
>
>
>  ----- Original Message -----
>  From: "Xiao-Feng Li" <xiaofeng.li@gmail.com>
>  To: <dev@harmony.apache.org>
>  Sent: Tuesday, March 04, 2008 3:36 PM
>  Subject: Re: Architecture Questions - Moving to JreLite
>
>
>  > On Tue, Mar 4, 2008 at 5:56 PM, Johnny Kewl <john@kewlstuff.co.za> wrote:
>  >> Newbie... please be gentle ;)
>  >>
>  >>  In relation to the *VM* how are these used and are they used at all, if
>  >> so
>  >>  why.
>  >>
>  >>  BCEL?
>  >>  (Probably introspection)
>  >>
>  >>  ICU?
>  >>  (Unicode... its too big to be good)
>  >>
>  >>  XALAN
>  >>  (please no)
>  >>
>  >>  XERCES
>  >>  (please no)
>  >>
>  >>  Yoko
>  >>  (Corba... I hope not)
>  >>
>  >>
>  >>  Its almost perfect, the only area that naturally needs work is that the
>  >> VM
>  >>  does not distinguish between a user using the program and a programmer
>  >>  that wants extra functionality... So Debuggers profiling tooling has to
>  >> be
>  >>  made all optional and dynamic links
>  >>
>  >>  Two JIT compilers ... beautiful, the OPT compiler must be optional or
>  >> late
>  >>  loading, its perfect, if they can be separated?
>  >
>  > Well, I would suggest to approach the interesting JreLite project in
>  > two almost independent phases. One is to deal with the non-VM stuff,
>  > the other is to deal with the VM itself. The second phase might be
>  > more challenging, but not really urgent, in my opinion.
>  >
>  > Btw, Johnny, have you any expectation on the size of JreLite? 10MB? 1MB?
>
>  Yes this is the million dollar question....
>  I think an initial HIT of 3 megs is MAX... thats what I want to try get it
>  to...
>  That must be possible, because as I see the technology, it will be more
>  efficient than Java Embedded, and that comes in at 5meg..
>  I think even smaller is possible, but if JavaLite only makes an initial HIT
>  of 3 megs.... Java is as free as a bird.
>  Applications will be starting from email and the browser...
>  Remember that the user does not install JreLite... they install a 80k boot
>  strap program called JRELite... so no pain.
>  The bootstrap JRELite is the initial loaded and platform detector... so what
>  it feels like to the user, is that the "first" app they run
>  is configuring the system.... the typical "Microsfot is now configuring your
>  system" message... then the app starts, its not finished downloading
>  but its running.... my guess, first time run on ADSL... 15 seconds before
>  the user see's it start....
>
>  A  3 meg hit I think is a worst case... but even at that.... java has jumped
>  out of it cage ;)
>
>

Ok, 3MB is quite ambitious. ;)  I think it's possible. But the problem
to attack then changes: in my previous email, I said the project
should probably start from the non-VM stuff, i.e., classlib packages;
for 3MB JRE, now I would suggest to start from the direct VM part. You
see the JIT already takes more than 3MB, and the VMcore as well. And
once this is achieved, the non-VM part could be easier.

It's an install(.exe) application that is small and, as you said, can
detect the platform and download necessary components. This installer
is associated (or built-in) with the distributable Java applications.
The user can simply launch (say, double click) the Java application
without knowing about the JRE stuff. The installer will do three
things:
1. start the app (primitively);
2. check if any components are missing or desirable;
3. check the platform if the missing components are installed already;
4. download the missing parts.

Thanks,
xiaofeng

>  >
>  > Thanks,
>  > xiaofeng
>  >
>  >>  Where are fonts actually used, not directly in the VM I hope, ie its AWT
>  >> and
>  >>  Swing classes, that *once loaded use them*, is that right?
>  >>  Something like classloader loads up a Swing class, it draws, this is a
>  >>  method call outside VM logic and links straight out to a system dll?
>  >>  Where is the native side of AWT and SWING living... in harmonyvm.dll?
>  >>
>  >>  Thanks... Harmony is great...
>  >>
>  >>
>  >
>  >
>  >
>  > --
>  > http://xiao-feng.blogspot.com
>  >
>
>



-- 
http://xiao-feng.blogspot.com

Mime
View raw message