Three Very Popular Hypervisors Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

Linux KVM is a Linux based Kernel Virtual Machine. It was release in April 2007 based on Linux 2.6.20. It is a hardware assisted fully virtualized solution for Linux. It virtualizes using native Linux kernel. It can run multiple major operating system guests simultaneously. Guests have private virtualized hardware. KVM supports virtual hardware platforms Intel-VT and AMD-v. In the other Type 1 Hypervisors the hypervisor layer is responsible for any trapping and handling the privileges that guest executes. The KVM provides the support for para-virtualization where the guest operating system on Type 1 hypervisor layer knows that it is virtualized and the guest OS is modified to replace all the privilege instructions with explicit calls to hypervisor API, so that it can reduce the workload on hypervisors and gives better performance. VMware ESX 3.5 also supports para- virtualization for Linux guest OS. KVM can run multiple virtual machines using unmodified Linux or Windows images. KVM runs inside our Linux machine which makes us easy to deploy and manage. However when compared to other VMM (Virtual Machine Manager) s, KVM offers less performance. Even though the KVM is the new entrant in the market, it is gaining ample recognition since it is supported by IBM, Red hat, HP, Intel, Suse. Xen is the only open source competitor for KVM. If a company is running windows operating system Hyper-v is the best choice. If the company is using open source software and operating systems like Solaris, Linux, MINIX and cares much about cost then Xen and KVM are better choices. Of course VMware is the great virtualization platform for high end solutions but it need to be registered for enterprise edition to get full fledge solutions. The KVM can be used same as VMware and Xen. KVM is good for cloud computing, ISP hosting and excellent for testing and development. Finally KVM had slow take off at start but as an open source it managed to gain rapid adoption and in a stable mature state now (Joel, 2012).

Compare and contrast the features of Xen to VMware's ESXi. How about costs? How does Citrix's implementation of Xen compare with ESXi?

Xen is open source by Univ. of Cambridge and VMware is enterprise level computer virtualization product by VMware Inc. There are lot of differences between them in terms of functionality, software and hardware some of them of depicted in the following chart.









Intended User




Type 1

Type 1

Virtualization Type

Full virtualization,

Hardware Assisted virtualization

Para virtualization







Virtual Machine Limits

Max Virtual CPUs


Max. virtual network devices

32 /VM

1,000 GB


32 /VM

256 GB


Virtual Host Limits

virtual machines per VM host

virtual devices per VM host

physical memory

virtual machines per CPU core



2000 GB




500 GB (dom0), 2 TB (Xen)


Supported Host OS


SUSE Linux

Supported Guest OS

except Novel NetWare server

except SUN Java desktop system, Windows XP,ME,NT, Server 2000


Free/$298 for support

Free / Open source

(FindTheBest, n.d.)

Xen is an opensource and Xen server is virtualization platform created by Citrix based on Xen. Xen is open source requires a base OS (Dom0) to run on it. So for example we could install any Linux distribution then we would install Xen Open source VMM tool, after that we would be able to create virtual machines on top of it.

Xen Server (citrix) and ESXi both are free but enterprise features have to be purchased. Both are bare metal hypervisors. These are easy to install. Xen sever has more features than ESXi, one of the best feature is IP tables. We can easily setup firewall rules on Xen Server itself. Another great feature is with Xen server we can easily setup a cluster of 16 physical servers. In High Availability mode server automatically migrates from one server to another server but HA mode is a paid service. When it comes to ESXi creating virtual machines is easy, but duplicating VM is somewhat time consuming. We can run unmodified guests without much performance loss. The performance of Xen Sever is better than ESXi, but windows hosts run sluggish in Xen than EsXi.

What's the purpose of the storage cluster?

In the abstract sense storage cluster consist of uniform services that are connected in a Storage Area Network (SAN) and can be accessed in our local server by mounting files as Virtual Files System (Ex: iSCSI). The features are high capacity and redundancy.

Storage Cluster vs. Traditional Storage: The basic difference between clustered storage and Traditional storage is scaling, it is more than just a package, shape and size. The cluster being able to scale gives more performance on throughput, bandwidth and capacity etc. Storage Clusters are always represented as brick structure. The key point is how the clusters are scale modularly. In the storage clusters have modules and distributed types of arrays that grow in the form of disk space, but there is still has an affinity between these disks so that they can act as one control unit rather than individual and independent disks.

There are some illusions that the clustered storage are applicable to large scale high band width applications like labs, physics, and classic scientific applications but in reality clustered systems are applicable to any type of applications because they are highly available. OLTP type applications, Oracle, SQL, e-mail, web services can be benefited from clustering. These applications require high IO operations, sequential or random read and write data and high throughput etc. Cluster as great for high performance but the increase in the nodes number or modules may cause integrity problem. It doesn't mean creating clusters and dividing in to nodes can't increase performance. The key point is how they work cohesively. In virtualization many systems have to access a single host so there is a possible chance of losing data if work load on server increases. Here the clusters are useful once a disk or storage device in a cluster fails then service will be automatically redirected to another disk. The Cluster storage cannot be applicable for application which need faster process and doesn't need replication and virtualization.