Re: [Java-gnome-developer] java-gnome on nokia 770
Brought to you by:
afcowie
From: pancake <pa...@yo...> - 2007-02-25 21:02:44
|
Hi sebastian > > I've a n770 too and i'm really interested on running java there. > for nice .debs you 'll have to wait a while, but you can grab some > tarballs from http://mancke-software.de/jalimo/, if you like (unpack > them to /usr/local/). Ok i'll try, atm i'm not much with the n770 and I've no spare time to play with it. btw Good job :) > We are planing to create and maintain a free real-world java stack for > linux mobiles (I call it JaLiMo), during this year. It should include > jvm, class library, gui framework, "desktop" integration, persistence > layer, WebService connectivity and some more. All tailored, integrated > and clean packaged for the linux embedded distributions. At the moment > the n770 is our first target, but n800, openmoko, open embedded in > general and familiar should also be supported. A friend of me was thinking on a 100% Free Java OS for mobile devices, something like jnode or so, I know that this is bloat for an embedded device but would bring a lot of new possibilities and force the community to enhace the java virtual machines for embedded devices. And Jazzele is the root :) What about kvm and j2me? Do you know what's the current state of the free j2me implementations? > For the gui, java-gnome is my first guess, at the moment. There will be > a bit effort for integration with the maemo-hildon library to use it on > the nokia-desktop, but that's no magic. Since I've no time in March, I > plan to do that at the beginning of April. Yup, java-gnome is cool for GUIs, faster than swing, and lightweight. I'll be waiting for news :) > > I know that the cpu runs java natively using the Jazzele extensions but > > ARM is stupid and doesn't give info about the java coprocessor. And nokia > > doesn't makes use of it. This really sucks. > Yes, this sucks. I looked a bit with google and found that it sounds > easy - but I have no low-level-assembler skills, yet! There is only one > additional arm-instruction (bxj=branch-to-java), which jumps to your > bytecode and brings the processor in an bytecode-execution-mode. > https://www.fawcette.com/javapro/2002_06/magazine/columns/javatogo/page3.aspx > I would wonder, if this is impossible for those jvm-hackers out there? I was discussing this with some kaffe@ guys and they told me that they tried to force arm to make the jazzele documentation free. But looks like no replies has been received. AFAIK the jazzele extension must be implemented in the kernel, and modify the virtual machine to make use of these new kernel extensions. So the kernel must keep tracking of each running Java VM, and load/store the state when scheduling between processes. That's because jazzele it's a single CPU, and you must swap between different contexts for each VM. This is not very difficult to do, but we need the documentation! No idea how difficult is to make reverse engineering on the KVM of symbian, and no idea if IDA supports Jazzele. I think no :/ > > I would like to know how fast does the cacaovm runs there. > I'm pleased: It is only 6-7 times slower than sun's jvm on my > ThinkPad@1.86GHz and 2-3 times faster than the interpreted jamvm. > I tried parsing an object creation from an 120k soap-xml-file (~2000 > lines) with kxml pull parser: cacao did the work in 948ms (jamvm needs > 2892ms). > But the start-up is very bad: HelloWorld takes 3.5 sec. Umf, the java startup is slow, because of the classpath...theorically with a hotspot vm or what the "barcelona project" tried to do is the way to fix this slowdown. And this is the ugly face of Java. BTW; what about the swap? Maemo takes 53/64M, and classpath+vm+app should get a bit of swap ... is cacao faster than jamvm on arm? --pancake |