JRE & JDK: Java Virtual Machine (JVM)

Components of the Java Runtime Environment

Overview

The Java Virtual Machine (JVM) is the core runtime engine of Java, and the target platform for the Java compiler—in much the same way that a physical CPU can be the target for a compiler that produces native machine code.

Core functionality

At runtime, the JVM converts Java bytecode into machine language for the underlying CPU and architecture, immediately prior to execution; this is referred to as Just-In-Time (JIT) compilation. From 1999 onward, the JIT compilation of the JVM included adaptive optimization, a profiling feature that identified frequently used sections of code, optimizing and caching the resulting machine language code, for a significant performance improvement.

Supporting functionality

Beyond JIT, the key functional elements of the JVM include:

The runtime configuration of some of these operations can be set through options of the Java application launcher.