Overview
The virtualization technology has been commonly used in different scientific domains like Grid and Cloud Computing. A traditional computer system runs applications directly on the complete physical machine. Using virtualization, applications are executed on virtual machines (VM), with each VM typically running a single application and a different operating system. An advantage of using virtual machine is fault tolerance, while a virtual machine can be simply migrated in case of hardware defect on the physical host. A core component for virtualization is the Virtual Machine Monitor, also called hypervisor. There are several implementations of hypervisors; well-known are the open source projects xen [1], KVM [2], and the commercial product VMware [3]. These hypervisors are successfully adopted to virtualize multicore architectures. Shared memory is a nice feature of a multicore machine. However, this feature is not available for applications running on separate virtual machines, even though these VMs are on the same host. In this case, it is not possible to execute a multithreaded application like OpenMP, with a group of VMs.
Tasks of the master thesis
The goal of the Master/Diplomarbeit is to develop a mechanism in the hypervisor to provision a special memory region that is visible to a group of virtual machines. For this, the KVM hypervisor will be modified. KVM adds the virtualization capabilities to a standard Linux kernel (see the following figure) and a VM is run as a regular Linux process. Hence, KVM makes a minimal system of a few hundred thousand lines of code.
Requirements
This work requires experiences on C/C++ programming. The knowledge about the virtualization technology and multicore architectures helps in getting started but is not necessary.
References
[1] Barham, B. Dragovic, and K. Fraser. Xen and the Art of Virtualization. In Proceedings of the nineteenth ACM Symposium on Operating Systems Principles, pages 164–144, 2003.
[2] KVM. Kernel Based Virtual Machine. http://www.linux-kvm.org/.
[3] VMware Inc. VMware. http://www.vmware.com.
Contact
Dr. Jie Tao: jie.tao@kit.edu