A hypervisor (also known as Virtual Machine Monitor (VMM)) is software that enables virtualization. It creates and manages virtual machines (VMs) on a physical computer. It acts as an abstract layer between the hardware and one or more operating systems.
Function and Significance
A hypervisor can be imagined as a conductor in an orchestra. It ensures that all instruments (in this case, virtual machines) use their resources effectively and don’t interfere with each other. The main task of a hypervisor is resource allocation. It distributes hardware resources such as CPU time, memory space, and network capacities so that each virtual machine functions as if it had its own hardware. A hypervisor allows the computer to run multiple operating systems simultaneously, as if they were installed on separate machines.
Hypervisor Types
Type 1
Type 1 hypervisors run directly on the bare hardware of the host system. They are also known as bare-metal hypervisors. Examples include VMware ESXi, Microsoft Hyper-V, and Xen. Generally, these offer better performance and higher security as they operate directly on the hardware.
Type 2
Type 2 runs within a host operating system. It is considered a “hosted” hypervisor and is particularly suitable for test environments or developers. Well-known examples are VMware Workstation and Oracle VirtualBox. These hypervisors are more flexible and easier to set up as they are installed like any other software on an existing operating system.
Characteristics and Application Areas
- Isolation
A hypervisor isolates VMs from each other. This means that one VM cannot directly influence or view the data of another. - Partitioning
It efficiently allocates resources so that each VM only receives the resources it needs. - Encapsulation
A VM, including its operating system and applications, can be treated as a single file, allowing for easy movement or copying. - Hardware Abstraction
VMs are not directly bound to the underlying hardware, allowing them to be moved between physical machines.
Areas of Application
- Server Virtualization
By consolidating multiple virtual servers onto one physical server, server virtualization reduces the number of physical servers. - Desktop Virtualization
Desktop virtualization allows users to access their desktop from any device as if they were sitting directly in front of their own PC. - Software Development and Testing
Hypervisors enable the creation of isolated test environments where developers can test software on various operating systems. - Disaster Recovery
Virtual machines can be restored faster and more easily than physical machines, reducing recovery times in case of disaster.
Well-known Products
Well-known hypervisor products include VMware vSphere (ESXi), which is widely used in large IT environments. After the announcement of the acquisition by Broadcom, there were concerns about future developments and support strategies, as Broadcom’s previous acquisitions often led to changes in product maintenance. In the case of VMware, the licensing was particularly criticized. Microsoft Hyper-V is a component of Windows Server and is often used in environments based on Microsoft technologies. Citrix XenServer is an open-source hypervisor known for its high performance and scalability, particularly used in cloud computing. KVM (Kernel-based Virtual Machine) is part of the Linux kernel and offers a cost-effective solution for Linux-based environments. Oracle VM Server specializes in optimizing Oracle applications and databases.
Selecting a Hypervisor
When selecting a hypervisor, one should consider compatibility, performance requirements, management tools, security features, and costs. Enterprise hypervisors offer comprehensive support services and advanced features, while open-source hypervisors provide more flexibility and customization options at lower costs.