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. 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
