What is a Hypervisor?
Introduction
A hypervisor or VMM (Virtual Machine Monitor) is a piece of computer software, firmware, or hardware that facilitates the creation and deployment of virtual machines (VMs). Furthermore, it is an abstraction layer that allows multiple OSs to run simultaneously on a single piece of computer hardware.
In fact, it is the main component of virtualization technologies and no VM exists without hypervisor. Furthermore, it allows multiple guest VMs to run on a single physical machine. In other words, it allocates CPU, memory, bandwidth and disk space for each VM running on the machine.
Types of Hypervisors
These are computer software or hardware that enables you to deploy multiple VMs. The virtual machines request services from the hypervisor through APIs.
There are two classes of hypervisors, Type 1 and Type 2:
Type 1: These families run directly on the host’s hardware and are sometimes called bare-metal or native hypervisors. There is no OS running between the hypervisor and the computer hardware.
In this arrangement, the hardware on which the hypervisor runs is the host OS. Whereas the OSs running on top of the hypervisor is the guest OSs. Type 1 hypervisors are building blocks of server virtualization. Examples of Type 1 include Microsoft Hyper-V, VMware ESXi, Oracle Vm Server, KVM, Xen, etc.
Type 2: In this configuration, a standard regular OS is installed between the hardware and the hypervisor layers. In other words, we can deploy the OS on the physical machine first and then the hypervisor resides on top of that OS. Moreover, we can create as many virtual machines (VMs) as possible on each guest OSs deployed. We sometimes call these families hosted hypervisors. Examples of Type 2 may include VirtualBox, Virtage, VMware Workstation, etc.
The primary difference between Type 1 and Type 2 is whether an underlying operating system runs in between to bridge the computer hardware with the VMs.