Diagram of the Java virtual machine (JVM) architecture. Source files in various languages are compiled into Java bytecode using compilers such as Javac and Jython. Any platform with a JVM can run the bytecode, by first passing it through a bytecode verifier and then either interpreting or compiling it to that platform's machine code on-the-fly with a JIT compiler. The Java APIs together with the JVM form the JRE (Java runtime environment). Both the JVM and APIs typically run as native code on top of the platform's operating system. Uses two public domain icons, File:Phone-blackberry-bold.svg and File:Computer-blue.svg.
Own work
Dcoetzee (File:Computer-blue.svg by OpenClipart, File:Phone-blackberry-bold.svg by User:Techtoucian)