JVM (Java Virtual Machine) is not physical entity. It is just a Virtual machine. Here Virtual means not having physical existence.
What is Virtual machine?
Virtual machine is a simple software program which simulates the functions of a physical machine. This is not having physical existence, but which can perform all operations like physical machines. Physical machine whatever it is doing, all those things we can able to do on the virtual machine. Best example of virtual machine is computer; it is worked like physical calculator.
All virtual machines categorized in to 2 types
1. Hardware based or System based Virtual Machine
2. Software based or Application based or process based Virtual Machine
Hardware based virtual machines
Physically only one physical machine is there but several logical machines we can able to create on the single physical machine with strong isolation (worked independently) of each other. This type of virtual machines is called hardware based virtual machines.
Main advantage of hardware based virtual machine is effective utilization of hardware resources. Most of the times these types of virtual machines associated with admin role (System Admin, Server Admin etc). Programmers never associated with the hardware based virtual machines.
Examples of hardware based virtual machines are
1. KVM (Kernel Based VM) for Linux systems
4. Cloud Computing
Software based virtual machines
These virtual machines acts as run time engine to run a particular programming language applications. Examples of software based virtual machines are
1. JVM (Java Virtual Machine) acts as runtime engine to run Java applications
2. PVM (Parrot Virtual Machine) acts as runtime engine to run Perl applications
3. CLR (Common Language Runtime) acts as runtime engine to run .NET based applications
Ashok Kumar, Software Developer at Vistata IT