A variety of technologies for managing computer resources by providing a software interface, known as an "abstraction layer," between the software (operating system and applications) and the hardware. Virtualization turns "physical" RAM and storage into "logical" resources. Following are the ways virtualization is used. See
logical vs. physical.
Hardware Virtualization
Hardware virtualization is what most computer people are referring to when they talk about virtualization. It partitions the computer's RAM into separate and isolated "virtual machines" (VMs) simulating multiple computers within one physical computer. Hardware virtualization enables multiple copies of the same or different operating systems to run in the computer and prevents the OS and its applications in one VM from interfering with the OS and applications in another VM. See
virtual machine and
OS virtualization.
Network and Storage Virtualization
In a network, virtualization consolidates multiple devices into a logical view so they can be managed from a single console (see
network virtualization). Virtualization also enables multiple storage devices to be accessed the same way no matter their type or location (see
storage virtualization).
Application Virtualization
Numerous technologies fall under the umbrella of "application virtualization," some of which have been around for decades, while others are at the forefront. See
application virtualization.
OS Virtualization
Under the control of one operating system, a server is split into "containers" that each handle an application. See
OS virtualization.