Sunday, October 28, 2018

JVM Components

Class Loader subsystem does the following:


It loads .class files into memory.
It verifies byte code instructions in that .class files.
Then it will allocate required memory to run the program.

This memory is divided into 5 blocks called Run Time Data Area. They are:

Method Area:

The class code & method code is available in method area.

Heap:

Objects are created on Heap.

Java Stacks:

Java methods are executed in Java stacks. Java stacks have frames to execute methods separately one method in one frame.

PC Registers:

Program counter registers contain memory address of instructions to be executed by microprocessor.

Native Method Stacks:

Native methods are executed on Native method stacks. Execution Engine contains Interpreter & JIT compiler which converts byte code instructions to machine language instructions. Then the processor will execute them.

No comments:

Post a Comment