Introduction to JVM

Introduction to JVM

  • JVM stands for Java Virtual Machine. It works as an engine that derives the Java Code.
  • The JVM does not understand Java type, that’s why it compiles .java files into .class files that contain the bytecodes understandable by the JVM.
  • JVM is also responsible for allocating a memory space

JVM Architecture

Class Loader

Class loader loads the class for execution of code.

Method Area

In this pre-class structure stored as constant pool.

Heap

Heap space is used by java runtime to allocate memory to objects and JRE classes. Whenever we create any object, it’s always created in the Heap space.

Stack

Local variables and partial results are store here. Each thread has a private JVM stack created when the thread is created.

Program Register

It holds the address of JVM instruction currently being executed.

Native Method Stack

It contains all native used in application.

Executive Engine

It controls the executions of instructions contained in the methods of the classes.

Native Method Interface

It gives an interface between java code and native code during execution.

Native Method Libraries

It consist of files required for the execution of native code.

NOTE: You will study further about all these terms in detail.

JRE

  • JRE(Java Runtime Environment) provides the libraries, the java virtual machine and other component to run the java program.
  • It does not contain tools and utilities such as compilers or debuggers for developing applets and applications.
  • JRE is a part of JDK but can be downloaded separately.
  • JRE was originally developed by Sun Microsystems Inc. the owned by Oracle Corporation.

JDK

  • JDK stands for Java Development Kit and is a superset of JRE.
  • It contains everything that is in JRE and in additional it contains tools such as the compilers and debuggers necessary for developing applets and applications.

 

Related Post

Data Types in Java Data Types in Java Data types represent the different values to be stored in the variable, for example if a variable has int data type, it ...
Setting Class Path for Java Setting Class Path for Java In this tutorial we are study how we can set the java JDK class path. Java is an open source software, it is is freely...
Drag and Drop Collection View cell in IOS 11 &... Drag and Drop Collection View cell in IOS 11 & swift 4 In this tutorial we are explain how to drag and drop collection view cell in two collectio...
Data Type And Storage And Keywords To store data inside the computer we need to first identify the type of data elements we need in our program. There are several different types of dat...
New Tools for 64-bit Support in Xcode 9.3   New Tools for 64-bit Support in Xcode 9.3 The last macOS release to support 32-bit apps without compromise is macOS High Sierra. Make sure fu...
Java If-else Statement Java If-else Statement The Java if statement is used to test the condition. It checks boolean condition: true or false. For example, if a number i...

Leave a Reply

Your email address will not be published. Required fields are marked *

Get more stuff like this
in your inbox

Subscribe to our mailing list and get interesting stuff and updates to your email inbox.