User:Egberts/Drafts/Virtualization

Virtualization is Article description::the concept and technique that permits running software in an environment separate from a computer operating system.

The operating system actually running on the hardware is referred to as the host. On this host resides a hypervisor (aka virtual machine manager), which runs virtual machines containing guest software.

Concepts
There are two types of hypervisors:


 * Type 1 hypervisors are installed directly on hardware and are also called bare-metal hypervisors. (VMware ESXi, Xen)
 * Type 2 hypervisors are installed on the underlying operating system. (VMware Workstation, QEMU/KVM)

Type-1 Hypervisor
Type 1 hypervisors provide a higher level of performance as there is no overhead from the interaction of the hypervisor with the guest OS.

Type-2 Hypervisor
Type-2 hypervisor subcategories are broken down into:


 * Spftware=assosted virtualization
 * (Pure) hardware-assisted (native) virtualization
 * Hybrid hardware-assist virtualization

Virtualization concept is shown below:



Software-assisted virtualization

 * use of machine code translator (qemu/tcg, (VMware Worksation <7)

(Pure) hardware-assisted (native) virtualization
Hardware-assisted virtualization ensures that virtual machines have high performance because “part” of the physical CPU is mapped directly to the virtual CPU (vCPU), and there is no overhead to translate instructions from a vCPU to CPU.
 * use of CPU VT to directly execute binary code. Page Table translation occurs when VM directly process the CPU instructions.  (qemu/kvm, VMware Workstations 7+)  A "pure" hardware-assisted virtualization approach, using entirely unmodified guest operating systems, involves many VM traps, and thus high CPU overheads, limiting scalability and the efficiency of server consolidation. Hardware-assisted virtualization reduces the maintenance overhead of paravirtualization as it reduces (ideally, eliminates) the changes needed in the guest operating system. It is also considerably easier to obtain better performance.

Hybrid hardware-assisted virtualization
This performance hit can be mitigated by the use of paravirtualized drivers; the combination has been called "hybrid virtualization"

Virtualization Software
There is a comparison table of virtualization software. QEMU is also broken out by its supported accelerators add-ons as well as its default software-emulation mode.