On the 0x3FE day of Apache Harmony Xiao-Feng Li wrote: > On Wed, Mar 5, 2008 at 9:50 AM, Johnny Kewl <[EMAIL PROTECTED]> wrote: > > > > > > ----- Original Message ----- > > From: "Xiao-Feng Li" <[EMAIL PROTECTED]> > > To: <[email protected]> > > 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 <[EMAIL PROTECTED]> 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.
I support the idea of starting from non-VM part in this project. > 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 > -- Egor Pasko
