A hypervisor, also known as a virtual machine manager, is a software application that enables multiple operating systems to run on a single physical host machine. It creates virtual environments, known as virtual machines (VMs), on which these operating systems can be installed and run as if they were running on their own dedicated hardware.
There are two main types of hypervisors:
Type 1 hypervisors, also known as native or bare-metal hypervisors, run directly on the host hardware and are responsible for managing the hardware resources of the physical machine. They provide a layer of abstraction between the physical hardware and the operating systems running on the VMs, allowing multiple operating systems to run on the same hardware without interference.
Type 2 hypervisors, also known as hosted hypervisors, run on top of an operating system and use the resources of the host operating system to create and manage VMs. They are typically used for personal or testing purposes, and are not as robust or scalable as type 1 hypervisors. Examples of type 2 hypervisors include VMware Workstation and Oracle VirtualBox.
The primary role of a hypervisor is to manage the allocation of hardware resources, such as CPU, memory, and storage, to the VMs running on the host machine. This enables multiple operating systems to share the resources of the physical hardware, improving resource utilization and enabling more efficient use of hardware resources. Hypervisors also provide isolation between VMs, ensuring that the operation of one VM does not impact the operation of other VMs on the same host machine.