A hypervisor is a process that separates a computer’s operating system and applications from the underlying physical hardware.
Usually done as software although embedded hypervisors can be created for things like mobile devices. The hypervisor drives the
concept of virtualization by allowing the physical host machine to operate multiple virtual machines as guests to help maximize
the effective use of computing resources such as memory, network bandwidth and CPU cycles.
Hypervisor is a thin software layer that intercepts operating system calls to the hardware. It is also called as the Virtual Machine Monitor (VMM). It creates a virtual platform on the host computer, on top of which multiple guest operating systems are executed and monitored.
Hypervisors are two types −
1. Type 1 or Native of Bare Metal Hypervisor
2. Type 2 or Hosted Hypervisor
Native hypervisors are software systems that run directly on the host's hardware to control the hardware and to monitor the
Guest Operating Systems. The guest operating system runs on a separate level above the hypervisor. All of them have a Virtual Machine Manager.
Examples of this virtual machine architecture are Oracle VM, Microsoft Hyper-V, VMWare ESX and Xen
Oracle VM: This hypervisor has open source Xen at its core and is free. Advanced features are only available in paid versions. Even though Oracle VM is essentially a stable product, it is not as robust as vSphere, KVM or Hyper-V.
VMware vSphere: VMware is an industry-leading vendor of virtualization technology, and many large data centers run on their products. It may not be the most cost-effective solution for smaller IT environments. If you do not need all the advanced features VMware vSphere offers, there is a free version of this hypervisor and multiple commercial editions.
Microsoft Hyper-V:Even though VMware’s hypervisor is higher on the ladder with numerous advanced features, Microsoft’s Hyper-V has become a worthy opponent. Microsoft also offers a free edition of their hypervisor, but if you want a GUI and additional functionalities, you will have to go for one of the commercial versions. Hyper-V may not offer as many features as VMware vSphere package, but you are still getting live migration, replication of virtual machines, dynamic memory and many others.
Xen Server: This Server virtualization platform by Citrix is best suited for enterprise environments. It can handle all types of workloads and provides features for the most demanding tasks. Citrix is proud of their proprietary features, such as Intel and NVIDIA enhanced virtualized graphics and workload security with Direct Inspect APIs.
Hosted hypervisors are designed to run within a traditional operating system. In other words, a hosted hypervisor adds a distinct software
layer on top of the host operating system. While, the guest operating system becomes a third software level above the hardware.
A well-known example of a hosted hypervisor is Oracle VM VirtualBox. Others include VMWare Server and Workstation, Microsoft Virtual PC, KVM, QEMU and Parallels.
Oracle VM VirtualBox: A free but stable product with enough features for personal use and most use cases for smaller businesses. VirtualBox is not resource demanding, and it has proven to be a good solution for both desktop and server virtualization. It provides support for guest multiprocessing with up to 32 vCPUs per virtual machine, PXE Network boot, snapshot trees, and many more.
VMware Workstation:VMware Workstation Pro is a type 2 hypervisor for Windows OS. It is full of advanced features and has seamless integration with vSphere. This allows you to move your apps between desktop and cloud environments.
Windows Virtual PC: Only supports Windows 7 as a host machine and Windows OS on guest machines. This includes multiple versions of Windows 7 and Vista, as well as XP SP3. Virtual PC is completely free.
Parallels Desktop: A competitor to VMware Fusion. It is primarily intended for MacOS users and offers plenty of features depending on the version you purchase. Some of the features are network conditioning, integration with Chef/Ohai/Docker/Vagrant, support for up to 128GB of per VM, etc.