Virtual Machines abstract operating systems from the underlying server or PC hardware. They provide software implementations of standard components such as network interfaces, storage controllers, display adapters, and more, that are generic and allow
the virtual machines to be moved to any physical hardware that implements a virtualization layer that converts these generic interface into specific hardware based instructions. Examples of virtualization solutions that provide the ability to run virtual
machines include
VMware vSphere,
Microsoft Hyper-V, and
Citrix Xen Server.