With the recent row between oracle and google I am curious to know if the dalvik vm really is a copy of the java vm….google says its a clean room technology and doesn’t involve java vm..
then why does it uses java to generate the bytecode ???
With the recent row between oracle and google I am curious to know if
Share
Counterintuitively, Java VM does not interpret Java. It interprets Java bytecode that is produced by a compiler (from Java sources, or, potentially, from some other language). The bytecode itself was designed with the general ideology of Java in mind, but it doesn’t have to be produced from Java. Similarly, the result of Java compilation doesn’t have to be Java bytecode. It can be CPU’s native instructions, or a bytecode in some other format.
The latter is the case with Dalvik.
The Dalvik VM interprets bytecode in its own format. Android SDK comes with a Java compiler that reads Java souces and spits Dalvik bytecode. So no, Java VM it’s not. It’s a VM all right, and the language of the sources happens to be Java.