Design and verification of a lightweight reliable virtual machine monitor for a many-core architecture
Rent the article at a discountRent now
* Final gross prices may vary according to local VAT.Get Access
Virtual machine monitors (VMMs) play a central role in cloud computing. Their reliability and availability are critical for cloud computing. Virtualization and device emulation make the VMM code base large and the interface between OS and VMM complex. This results in a code base that is very hard to verify the security of the VMM. For example, a misuse of a VMM hyper-call by a malicious guest OS can corrupt the whole VMM. The complexity of the VMM also makes it hard to formally verify the correctness of the system’s behavior. In this paper a new VMM, operating system virtualization (OSV), is proposed. The multiprocessor boot interface and memory configuration interface are virtualized in OSV at boot time in the Linux kernel. After booting, only inter-processor interrupt operations are intercepted by OSV, which makes the interface between OSV and OS simple. The interface is verified using formal model checking, which ensures a malicious OS cannot attack OSV through the interface. Currently, OSV is implemented based on the AMD Opteron multi-core server architecture. Evaluation results show that Linux running on OSV has a similar performance to native Linux. OSV has a performance improvement of 4%–13% over Xen.
- Barham, P, Dragovic, B, Fraser, K, Hand, S, Harris, T, Ho, A, Neugebauer, R, Pratt, I, Warfield, A (2003) Xen and the art of virtualization. Proceedings of the 19th ACM Symposium on Operating Systems Principles. pp. 164-177
- Understanding Memory Resource Management in VMware ESX Server. VMWare white paper. www.vmware.com/files/pdf/perfvsphere-memory_management.pdf
- Klein, G, Elphinstone, K, Heiser, G, Andronick, J, Cock, D, Derrin, P, Elkaduwe, D, Engelhardt, K, Kolanski, R, Norrish, M, Sewell, T, Tuch, H, Winwood, S (2009) seL4: formal verification of an OS kernel. Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles. pp. 207-220 CrossRef
- Holzmann, G J (2002) The logic of bugs. Proceedings of Foundations of Software Engineering.
- Gens F. IT cloud services user survey, part.2: top benefits & challenges. http://blogs.idc.com/ie/?p=210
- Boyd-Wickizer, S, Chen, H, Chen, R, Mao, Y, Kaashoek, F, Morris, R, Pesterev, A, Stein, L, Wu, M, Dai, Y (2008) Corey: an operating system for many cores. Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation. pp. 43-57
- Engler, D, Kaashoek, M (1995) Exokernel: an operating system architecture for application-level resource management. ACM SIGOPS Operating Systems Review 29: pp. 251-266 CrossRef
- Baumann, A, Barham, P, Dagand, P, Harris, T, Isaacs, R, Peter, S, Roscoe, T, Schupbach, A, Singhania, A (2009) The multikernel: a new OS architecture for scalable multicore systems. Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles. pp. 29-44 CrossRef
- Seshadri, A, Luk, M, Qu, N, Perrig, A (2007) SecVisor: a tiny hypervisor to provide lifetime kernel code integrity for commodity OSes. ACM SIGOPS Operating Systems Review 41: pp. 335-350 CrossRef
- McCune, JM, Li, Y, Qu, N, Zhou, Z, Datta, A, Gligor, V, Perrig, A (2010) TrustVisor: efficient TCB reduction and attestation. IEEE Symposium on Security and Privacy.. pp. 143-158
- Keller, E, Szefer, J, Rexford, J, Lee, R B (2010) NoHype: virtualized cloud infrastructure without the virtualization. ACM SIGARCH Computer Architecture News 38: pp. 350-361 CrossRef
- Shinagawa, T, Eiraku, H, Tanimoto, K, Omote, K, Hasegawa, S, Horie, T, Hirano, M, Kourai, K, Oyama, Y, Kawai, E (2009) BitVisor: a thin hypervi sor for enforcing i/o device security. Proceedings of the 2009 ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments. pp. 121-130 CrossRef
- Zhang, F, Chen, J, Chen, H, Zang, B (2011) CloudVisor: retrofitting protection of virtual machines in multi-tenant cloud with nested virtualization. Proceedings of the 23rd ACM Symposium on Operating Systems Principles. pp. 203-216
- Steinberg, U, Kauer, B (2010) NOVA: a microhypervisor-based secure virtualization architecture. Proceedings of the 5th European Conference on Computer Systems. pp. 209-222
- Klein, G, Elphinstone, K, Heiser, G, Andronick, J, Cock, D, Derrin, P, Elkaduwe, D, Engelhardt, K, Kolanski, R, Norrish, M (2009) seL4: formal verification of an OS kernel. Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles. pp. 207-220 CrossRef
- Franklin, J, Seshadri, A, Qu, N, Chaki, S, Datta, A (2008) Attacking, repairing, and verifying SecVisor: a retrospective on the security of a hypervisor. Technical Report CMU-CyLab-08-008.
- Wang, Z, Jiang, X (2010) Hypersafe: a lightweight approach to provide lifetime hypervisor control-flow integrity. IEEE Symposium on Security and Privacy (SP). pp. 380-395
- Ravi V, Becchi M, Agrawal G, Chakradhar S. Supporting GPU sharing in cloud environments with a transparent runtime consolidation framework. In: Proceedings of the International Symposium on High-Performance Parallel and Distributed Computting. 2011
- Amd64 architecture programmers manual volume 2: system programming.
- Holzmann, G J (1997) The model checker SPIN. IEEE Transactions on Software Engineering 23: pp. 279-295 CrossRef
- McVoy, L, Staelin, C (1996) Lmbench: portable tools for performance analysis. Proceedings of the 1996 Annual Conference on USENIX Annual Technical Conference. pp. 23
- Kortchinsky, K (2009) Hacking 3D (and breaking out of VMWare). Proceedings of Black Hat conference.
- Wojtczuk, R, Rutkowska, J (2008) Xen Owning trilogy. Proceedings of Black Hat conference.
- Secunia. Xen multiple vulnerability report. http://secunia.com/advisories/44502/
- Ren, J, Qi, Y, Dai, Y, Xuan, Y (2011) Inter-domain communication mechanism design and implementation for high performance. Proceedings of the 4th International Symposium on Parallel Architectures, Algorithms and programming (PAAP). pp. 272-276
- Design and verification of a lightweight reliable virtual machine monitor for a many-core architecture
Frontiers of Computer Science
Volume 7, Issue 1 , pp 34-43
- Cover Date
- Print ISSN
- Online ISSN
- SP Higher Education Press
- Additional Links
- virtual machine monitor
- operating system
- many core
- formal verification
- Industry Sectors