Hardware virtualization is the abstraction of computing resources from the software that uses the resources through the use of a virtual machine manager (VMM) called a hypervisor. The hypervisor provides the abstracted hardware to multiple guest operating systems which can then share the physical hardware resources more efficiently, increasing performance and lowering costs by enabling server consolidation.
By separating resources or requests for service from the physical delivery of that service, virtualization technology enables administrators to distribute resources across the enterprise, enabling them to adapt to the organization’s needs and use its infrastructure more efficiently. Virtualization is the technology that enables cloud computing, by allowing different computers to access a shared pool of resources.
Virtualization technologies are used in a range of system layers to consolidate workloads and to make IT environments scalable and more flexible. Hardware virtualization is one type of virtualization that has made it possible for companies to more efficiently employ underused physical hardware. Full utilization of the physical resources available in powerful servers, for example, reduces the total cost of ownership for server deployments.
Hardware virtualization is structured in layers consisting of the following components:
Hardware virtualization enables a single physical machine to function as multiple machines by creating simulated environments. The physical host uses software called a hypervisor that creates an abstraction layer between the software and the hardware and manages the shared physical hardware resources between the guest OS and the host OS. The hypervisor connects directly to the hardware and enables it to be split into multiple distinct environments or virtual machines. These VMs use the resources of the physical host, including CPU, memory and storage, which are allocated to the guests as needed. When done for server platforms, hardware virtualization is called server virtualization. Hardware virtualization makes it possible to use a physical machine’s full capacity and, by isolating VMs from one another, to protect against malware.
Full virtualization—In full virtualization, the hardware architecture is completely simulated, enabling an unmodified guest operating system to be run in isolation. Data is abstracted from the underlying hardware by the virtualization layer, isolating service requests from the physical hardware that facilitates them. In this scenario, the guest operating system is unaware that it is in a virtualized environment, and therefore hardware is virtualized by the host operating system so that the guest can issue commands to what it thinks is actual hardware. However, these are just simulated hardware devices created by the host, and the hypervisor translates all OS calls. This type of virtualization isolates VMs from the host OS and one another, enabling total portability of VMs between hosts regardless of underlying hardware. VirtualBox and VMware are among the familiar commercial implementations of full virtualization.
Operating system–level virtualization—In operating system–level virtualization, a physical server is virtualized at the OS level and runs multiple environments on a single operating system. OS virtualization does not use a hypervisor. Instead, its capabilities are part of the host OS, which performs the functions of the hypervisor.
System-level virtualization—System-level virtualization is very similar to OS-level virtualization with one principal difference. In OS virtualization, different servers can run different operating systems, including different versions of a single OS. However, in system-level virtualization, the virtual servers share the same operating system.
Paravirtualization— In paravirtualization, the source code of an operating system is modified to run on top of a virtual machine monitor. This OS modification is required for the guest OS to communicate through calls to the API provided by the hypervisor (known as hypercalls). In this scenario, the guest OS is aware that it is a guest OS in a virtual machine environment and receives information on the other operating systems on the same physical hardware, enabling them to share resources rather than emulate an entire hardware environment. In paravirtualization, the guest OS communicates directly to the hypervisor, improving performance and efficiency.
Hardware-assisted virtualization—In hardware-assisted virtualization, the computer’s physical components provide the architectural support for the virtual machine manager, or hypervisor. The combination of hardware and software allows different guest operating systems to run in isolation simultaneously on a host computer, preventing potentially harmful instructions from being executed directly on the host machine. These physical components primarily consist of the host processors, which optimize virtualization in a number of ways. Chip makers Intel, AMD and ARM created new Intel VT-x and AMD-V virtual machine extensions to the CPU instruction set that enable virtualization of the CPU functionality. This support is not enabled by default; on many systems, hardware virtualization features must be enabled in the system’s firmware, or BIOS, before software can use them. Microsoft Hyper-V, Xen, and Linux KVM are among the well-known implementations of hardware-assisted x86 virtualization.
Citrix Hypervisor supports and secures virtual environments and boosts IT flexibility with an open-source virtualization platform that enables you to manage different workload types, mixed operating systems and complex storage or networking requirements. With Citrix Hypervisor, you can:
Get a technical overview of core Citrix Hypervisor features and learn how it ensures a seamless path for moving workloads to the cloud.