The JRE is the software environment in which programs compiled for a typical JVM implementation can run. The runtime system includes:
Code necessary to run Java programs, dynamically link native methods, manage memory, and handle exceptions
Implementation of the JVM
The following figure shows the JRE and its components, including a typical JVM implementation's various modules and its functional position with respect to the JRE and class libraries.