Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Can anyone elaborate on how JIT is new to 2.2 and how that compares to how <=2.1 handles it? I haven't touched Java in ages, but I thought JIT was a fundamental part of how Java works, so I'm a bit confused.


Android does not have a JVM. While Android applications are written in Java, and initially compiled to Java bytecode, that bytecode is then translated into Davlik bytecode, and saved to a compact .dex executable, and run in the Davlik virtual machine. The Davlik virtual machine is quite different from the JVM. It is optimized for small devices. It is register-based rather than stack-based. It does not (currently) include a JIT compiler.


Very true, except that it's called Dalvik.


Whoops. Been saying and spelling it wrong for a while. Thank's for pointing that out.


Wow, I had no idea! Thanks for the summary. :)


Yup, seems like a really clever way to give developers a familiar language with a huge library without having to make a deal with Sun (err Oracle) for a JVM license


Isn't the JVM OSS?


Here's an article on this: "Dalvik: how Google routed around Sun’s IP-based licensing restrictions on Java ME" http://www.betaversion.org/~stefano/linotype/news/110/


The clever part is getting anyone to believe that a VM with the exact same semantics as Java doesn't infringe Java patents.


"I thought JIT was a fundamental part of how Java works, so I'm a bit confused."

Suns JDK has had JIT since 1.2 (J2SE in marketspeak), but it is not a prerequisite for Java. It just speeds things up (after a short pause for compile to native).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: