/ˈhaɪpərˌvaɪzər/
noun … “Manages virtual machines on a physical host.”
Hypervisor, also known as a virtual machine monitor (VMM), is a software, firmware, or hardware layer that creates and manages Virtual Machines on a physical host system. It abstracts the underlying CPU, memory, storage, and peripherals, allowing multiple VMs to run concurrently, each with its own isolated operating system. The hypervisor mediates access to physical resources, enforces isolation, and provides management features such as snapshotting, migration, and resource allocation.
There are two main types of hypervisors:
- Type 1 (Bare-metal): Runs directly on the host hardware without an intervening operating system. Examples include VMware ESXi, Microsoft Hyper-V, and Xen. Type 1 hypervisors provide high performance and strong isolation because they operate at the hardware level.
- Type 2 (Hosted): Runs on top of a conventional operating system, such as VMware Workstation or VirtualBox. These hypervisors are easier to install and use but typically have slightly higher overhead compared to Type 1.
Key characteristics of a Hypervisor include:
- Resource abstraction: allocates virtual CPUs, memory, and I/O devices to each VM.
- Isolation: ensures that VMs cannot directly interfere with each other’s memory or processes.
- Scheduling: decides which VM gets CPU cycles and manages context switching.
- Snapshot and migration support: enables saving VM states and moving VMs across hosts for maintenance or load balancing.
In practical workflows, a cloud provider may run a Type 1 hypervisor on physical servers, allowing hundreds of guest operating systems to execute as Virtual Machines on a single host. The hypervisor schedules CPU access, manages memory allocation, and handles I/O requests from each VM. This setup provides strong security boundaries, operational flexibility, and efficient hardware utilization.
Conceptually, a Hypervisor is like a building manager for an apartment complex. Each apartment (Virtual Machine) has its own furniture and inhabitants (OS and applications), but the manager controls access to shared resources such as water, electricity, and elevators, ensuring that each apartment operates independently and efficiently.
See Virtual Machine, CPU, Python, Multiprocessing.