Contents Prev Next Up

## The Java Virtual Machine

# Components of the Virtual Machine

The Java virtual machine consists of:

- An instruction set

- A set of registers

- A stack

- A garbage-collected heap

- A method area

All of these are logical, abstract components of the virtual machine. They do not presuppose any particular implementation technology or organization, but their functionality must be supplied in some fashion in every Java system based on this virtual machine. The Java virtual machine may be implemented using any of the conventional techniques: e.g. bytecode interpretation, compilation to native code, or silicon.

The memory areas of the Java virtual machine do not presuppose any particular locations in memory or locations with respect to one another. The memory areas need not consist of contiguous memory. However, the instruction set, registers, and memory areas are required to represent values of certain minimum logical widths (e.g. the Java stack is 32 bits wide). These requirements are discussed in the following sections.

Contents Prev Next Up

Generated with CERN WebMaker