<div class='slidealt'>Virtualization research projects <a title='ARM multicore kvm open source' href='/en/research'>in cloud and embedded systems</a></div> <div class='slidealt'>Virtualization solutions for heterogeneous <a title='ARMv7-ARMv8 virtualization open source solutions' href='/en/solutions'>ARM multicore systems</a></div> <div class='slidealt'>Benefit from custom <a title='kvm on arm services full virtualization' href='/en/services'>virtualization services</a></div> <div class='slidealt'>Experience kvm <a title='virtualization for embedded heterogeneous arm core platforms' href='/en/products'>virtualization extensions</a></div> <div class='slidealt'>KVM on ARMv7 and ARMv8 <a title='kvm-on-arm open source smu extensions' href='/en/solutions/guides/vfio-on-arm/'>IOMMU full virtualization</a></div>

Introduction to virtualization technology

Introduction to virtualization

Virtualization software technology is meant for running several isolated operating systems and their applications (Guest Virtual Machines) on one set of physical hardware resources. In a virtualized computing environment, each isolated Guest Virtual Machine (VM) has access to the required computing resources from an host operating system as needed.

Virtualization has become popular in datacenters where physical servers can be virtualized for a more efficient usage. On the other hand virtualization is becoming more and more relevant in embedded and mobile devices as there is a general trend of switching the entire computing base of private and business consumers from a traditional laptop/desktop usage model to a model consisting of embedded devices, mobile smartphones and tablet devices. Important benefits of virtualized systems are recognized in these days.

Historic landscape in virtualization

Virtualization is not a new concept. In fact, it dates back to the 1970’s where it was typical to write software directly for the hardware without a multi-tasking OS underneath. When hardware became more powerful, virtual machine monitors became the solution for time sharing. In 1974 Popek and Goldberg released their article Formal Requirements for Virtualizable Third Generation Architectures, which is still used today in research literature to define virtualization concepts and distinguish between types of hypervisors. However, as operating systems became more advanced and the PC became more commonplace than the mainframe, the need for hypervisor-based time sharing disappeared.

In 1999, however, a group of researchers from Stanford University released a software meant initially to help IT professionals to run more than one operating system on a single machine for test and development purposes. Further, by giving IT professionals contained environments, these were free to perform testing and development in confined environments, which would not break their daily production systems.

In 2001 the first server virtualization commercial product was released and as hardware became increasingly powerful throughout the zero years, server consolidation through the use of virtualization became an easy way to cut hardware, power, and, cooling costs in the datacenter. Further, added benefits from virtualization such as file system snapshots, migration, and, cloning made virtualization even more popular. In fact, increased requirements to companies Disaster Recovery Plans (DRP) caused many such plans to be based on virtualization with continuous off-site synchronization of VMs.

Desktop virtualization has become increasingly popular for non IT-professionals allowing native virtualization of Windows and Linux operating systems. Further, it is quite common in academic circles to run open source linux in VMs, where users run Windows or OS X as their host operating systems.