3 ms·
Google are using Java (a derivative of the Apache Harmony implementation of Java) but compiling it to a different bytecode that runs on the Dalvik virtual machi
by rryan 15y ago
Google are using Java (a derivative of the Apache Harmony implementation of Java) but compiling it to a different bytecode that runs on the Dalvik virtual machine.
Dalvik is very different from the JVM in a variety of fundamental ways. The Wikipedia article has plenty of info on this.
Oracle's patents are on many of the inner workings of the JVM. Java itself (the language) does not have many unique aspects which were patentable because Java is largely derivative from languages that came before it.
So basically (as I understand it), Android uses Java in a very superficial way, and the patent issues at hand are whether Dalvik infringes on Oracle patents on VM techniques.
- 0xABADC0DA 15y agoDalvik is also very similar to the JVM in a number of ways. For instance the instruction set maps almost 1:1 to bytecodes: OP_MONITOR_ENTER vs monitorenter OP_INVOKE_STATIC vs invokestatic OP_THROW vs athrow OP_CHECK_CAST vs checkcast OP_ARRAY_LENGTH vs arraylength OP_NEW_ARRAY vs anewarray ... If the question is "Dalvik was designed to run code written in what language?" the answer is "Java" without any doubt. This might be important to some legal question, whether Google created it with the specific intention to not pay license fees or something, or whether they broke a license for J2SE (they use Java a lot) that prohibits them from creating incompatible versions of Java.