Lably
Skip to content

Hypervisor

Piece of software or hardware that creates and runs virtual machines

  • 10 min read
  • 6 chapters

Related on Lably

Through Software, Computer hardware and Virtual machine

The term hypervisor is a variant of supervisor, a traditional term for the kernel of an operating system: the hypervisor is the supervisor of the supervisors, with hyper- used as a stronger variant of super-. The term dates to circa 1970; IBM coined it for software that ran OS/360 and the 7090 emulator concurrently on the 360/65 and later used it for the DIAG handler of CP-67. In the earlier CP/CMS (1967) system, the term Control Program was used instead.

Some literature, especially in microkernel contexts, makes a distinction between hypervisor and virtual machine monitor (VMM). There, both components form the overall virtualization stack of a certain system. Hypervisor refers to kernel-space functionality and VMM to user-space functionality. Specifically in these contexts, a hypervisor is a microkernel implementing virtualization infrastructure that must run in kernel-space for technical reasons, such as Intel VMX. Microkernels implementing virtualization mechanisms are also referred to as microhypervisor. Applying this terminology to Linux, KVM is a hypervisor and QEMU or Cloud Hypervisor are VMMs utilizing KVM as hypervisor.

Classification

In his 1973 thesis Architectural Principles for Virtual Computer Systems, Robert P. Goldberg classified two types of hypervisor:

Type-1, native or bare-metal hypervisors
These hypervisors run directly on the host's hardware to control the hardware and to manage guest operating systems. For this reason, they are sometimes called bare-metal hypervisors. The first hypervisors, which IBM developed in the 1960s, were native hypervisors. These included the test software SIMMON and the CP/CMS operating system, the predecessor of IBM's VM family of virtual machine operating systems. Examples of Type-1 hypervisor include Hyper-V, Xen and VMware ESXi.
Type-2 or hosted hypervisors
These hypervisors run on a conventional operating system (OS) just as other computer programs do. A virtual machine monitor runs as a process on the host, such as VirtualBox. Type-2 hypervisors abstract guest operating systems from the host operating system, effectively creating an isolated system that can be interacted with by the host. Examples of Type-2 hypervisor include VirtualBox and VMware Workstation.

The distinction between these two types is not always clear. For instance, KVM and bhyve are kernel modules that effectively convert the host operating system to a type-1 hypervisor.

Sign in to keep reading

5 more chapters are free with a Lably account.

More in Computing and communication