Difference between revisions of "Hypervisor"

From Pulsed Media Wiki
(Created page with "{{Short description|Layer of software, firmware or hardware that creates and runs virtual machines}} {{Redirect|VMM|other uses|VMM (disambiguation)}} {{Infobox software | name...")
 
(Guides: Information: PulsedMedia: Pulsed Media: Linux)
 
Line 1: Line 1:
{{Short description|Layer of software, firmware or hardware that creates and runs virtual machines}}
+
 
{{Redirect|VMM|other uses|VMM (disambiguation)}}
 
{{Infobox software
 
| name = Hypervisor
 
| logo =
 
| caption = Diagram illustrating the concept of hardware virtualization with a hypervisor layer managing guest operating systems on host hardware.
 
| type = [[Virtualization]] software/firmware
 
| inventor = IBM (early concepts)
 
| introduced = 1960s (early forms), widespread since 2000s
 
| subtype_of = [[Virtualization]]
 
}}
 
  
 
A '''hypervisor''' (also known as a '''Virtual Machine Monitor''' or '''VMM''') is a layer of [[Computer software|software]], [[Firmware|firmware]], or [[Computer hardware|hardware]] that creates and runs [[Virtual machine|virtual machines]] (VMs). It allows one [[Host (network)|host machine]] to support multiple [[Guest (virtual machine)|guest machines]] by virtually sharing its [[Computer hardware|hardware]] resources, such as [[central processing unit|CPU]] power, [[Random-access memory|memory]], and [[Input/output|I/O]] devices.
 
A '''hypervisor''' (also known as a '''Virtual Machine Monitor''' or '''VMM''') is a layer of [[Computer software|software]], [[Firmware|firmware]], or [[Computer hardware|hardware]] that creates and runs [[Virtual machine|virtual machines]] (VMs). It allows one [[Host (network)|host machine]] to support multiple [[Guest (virtual machine)|guest machines]] by virtually sharing its [[Computer hardware|hardware]] resources, such as [[central processing unit|CPU]] power, [[Random-access memory|memory]], and [[Input/output|I/O]] devices.
Line 43: Line 33:
  
 
=== Type 2 Hypervisors (Hosted) ===
 
=== Type 2 Hypervisors (Hosted) ===
* These hypervisors run as an application on top of a conventional [[Host (network)|host operating system]] (like Windows, macOS, or Linux).
+
* These hypervisors run as an application on top of a conventional [[Host (network)|host operating system]] (like Windows, macOS, or [[Linux]]).
 
* The host OS manages the hardware resources, and the hypervisor is a software layer that schedules and manages the guest VMs as processes within the host environment.
 
* The host OS manages the hardware resources, and the hypervisor is a software layer that schedules and manages the guest VMs as processes within the host environment.
 
* Guest OSes run on top of the hypervisor software, which in turn relies on the host OS.
 
* Guest OSes run on top of the hypervisor software, which in turn relies on the host OS.
Line 65: Line 55:
 
* [[Virtual machine]]
 
* [[Virtual machine]]
 
* [[Virtualization]]
 
* [[Virtualization]]
* [[Kernel-based Virtual Machine|KVM]]
 
 
* [[QEMU]]
 
* [[QEMU]]
* [[libvirt]]
 
* [[Cloud computing]]
 
 
== References ==
 
{{reflist}}
 
 
== External links ==
 
* [https://www.vmware.com/topics/glossary/content/hypervisor VMware: What is a Hypervisor?]
 
* [https://www.redhat.com/en/topics/virtualization/what-is-a-hypervisor Red Hat: What is a Hypervisor?]
 
* [https://www.ibm.com/topics/hypervisors IBM: Hypervisors]
 
  
{{Virtualization}}
 
{{Operating system kernels}}
 
{{Computer architecture}}
 
  
[[Category:Virtualization]]
+
[[Category:Guides]]
[[Category:Operating system kernels]]
+
[[Category:Linux]]
[[Category:Computer architecture]]
 
[[Category:System administration]]
 
[[Category:Computer software]]
 

Latest revision as of 12:36, 26 May 2025


A hypervisor (also known as a Virtual Machine Monitor or VMM) is a layer of software, firmware, or hardware that creates and runs virtual machines (VMs). It allows one host machine to support multiple guest machines by virtually sharing its hardware resources, such as CPU power, memory, and I/O devices.

The hypervisor acts as an intermediary layer between the physical host hardware and the guest operating systems (OSs) running inside the VMs. Its primary function is to provide isolation between VMs and manage the allocation of the host's resources to ensure that each VM operates independently and efficiently.

Overview

The hypervisor is the core component of virtualization platforms. It enables the virtualization of physical hardware, allowing multiple operating systems to run concurrently on a single physical machine. Each VM is presented with a virtualized set of hardware resources, giving the guest OS the impression that it has dedicated access to hardware, when in reality, the hypervisor is managing and sharing the host's actual resources.

Isolation provided by the hypervisor ensures that if one VM crashes or is compromised, it does not affect the operation of other VMs or the host system. This enhances stability, security, and resource utilization.

Role in Virtualization

The hypervisor is essential for hardware virtualization. It performs tasks such as:

  • Hardware Abstraction: It hides the details of the underlying physical hardware from the guest OS, providing a consistent virtual hardware environment.
  • Resource Allocation: It controls how the host's CPU time, memory, storage I/O, and network bandwidth are allocated and scheduled among the competing guest VMs.
  • Instruction Interception: It can intercept and manage privileged instructions issued by the guest OS that directly access hardware, either handling them itself or translating them for the physical hardware.
  • Device Emulation/Paravirtualization: It provides guests with access to virtual devices (emulated hardware) or uses paravirtualization techniques (where the guest OS is modified to be aware it's running on a hypervisor for better performance) to handle I/O.

Types

Hypervisors are generally categorized into two main types based on their relationship to the host hardware and operating system:

Type 1 Hypervisors (Native or Bare-Metal)

  • These hypervisors run directly on the host computer's hardware, below any operating system.
  • They manage the hardware resources directly and provide a platform for guest operating systems to run on.
  • Guest OSes run directly on the hypervisor.
  • They are typically used in server environments and data centers due to their efficiency, performance, and resource management capabilities.

Common Examples:

  • VMware ESXi
  • Microsoft Hyper-V (when installed as the primary OS layer)
  • Xen
  • KVM (A virtualization infrastructure in the Linux kernel that, combined with user-space components like QEMU and libvirt, functions as a Type 1 hypervisor).

Type 2 Hypervisors (Hosted)

  • These hypervisors run as an application on top of a conventional host operating system (like Windows, macOS, or Linux).
  • The host OS manages the hardware resources, and the hypervisor is a software layer that schedules and manages the guest VMs as processes within the host environment.
  • Guest OSes run on top of the hypervisor software, which in turn relies on the host OS.
  • They are commonly used on desktop computers for running different operating systems for development, testing, or compatibility purposes.

Common Examples:

Key Functions

The core functions performed by a hypervisor include:

  • Creating, starting, stopping, and deleting virtual machines.
  • Allocating and dynamically adjusting CPU, memory, and storage resources for each VM.
  • Scheduling CPU time for guest VMs on the physical CPU cores.
  • Managing virtual networking and storage for VMs.
  • Providing virtual input/output devices to the guest OS.
  • Maintaining isolation and security boundaries between VMs.

See also