Virtualization

From Exterior Memory
Revision as of 03:04, 1 June 2015 by MacFreek (Talk | contribs) (Created page with "== Terminology == A hypervisor runs on the physical hardware. The hypervisor allocates (hardware) resources to different virtual machines, each containing a guest operating s...")

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Terminology

A hypervisor runs on the physical hardware. The hypervisor allocates (hardware) resources to different virtual machines, each containing a guest operating system.

Virtualization Methods

The three main methods of computer host virtualization are:

Virtualization/Emulation
Complete emulation of all hardware. This is slowest. Allows a hypervisor to emulate different a CPU for each guest OS.
Paravirtualization
The guest operating system runs on top of a small software API that closely mimics the underlying hardware, albeit in a jail. May be fast. Allows different operating systems to run in the same hypervisor.
Operating system-level virtualization
The guest and hypervisor run the same operating system. May be fastest, but also the least flexible.

Example Software and hosters

{{ | Emulation || VMware, Qemu, Bochs || |- | Paravirtualization || Xen, KVM, bhyve, Wind River, Hyper-V?, VirtualBox? || |- | Operating system-level virtualization || chroot/jail, Linux VServer, OpenVZ/Virtuozzo, Docker, User Mode Linux. || |}

Amazon uses Xen. Strato uses Virtuozzo.

Hardware-assisted virtualization

The speed of paravirtualization greatly benefits from hardware virtualization. Both Intel VT-x and AMD-V (released in 2006) allow the virtualization to run in hardware instead of software. This reduces the overhead and makes paravirtualization for guest OS almost as fast as the hypervisor OS.