文档介绍:华中科技大学
硕士学位论文
ARM平台上实现Linux内核虚拟机技术研究
姓名:赵亚辉
申请学位级别:硕士
专业:工业工程
指导教师:朱建新
2011-01-16
华中科技大学硕士学位论文
摘要
虚拟机技术可以简化计算机系统管理,提高系统的可移植性、可靠性和安全性,已
经成为计算机技术研究和应用领域的一个重要方向。嵌入式系统向非专用计算平台方向
的发展使它们要面对与普通计算机系统相同的需求,比如系统管理、系统可靠性、软件
平台适应性和安全性等,在嵌入式系统上应用虚拟机技术越来越重要。Linux 内核虚拟
机(KVM)是一种开源的虚拟机技术,它作为 Linux 内核的一个模块,具有很强的适应
性和性能,不过它需要处理器架构支持硬件虚拟化功能,而在嵌入式领域应用广泛的
ARM 处理器不支持硬件虚拟化,这就使得 Linux 内核虚拟机无法直接应用在 ARM 架构
平台上,目前国内在这个领域缺少相关的研究。
论文研究并分析了 ARM 处理器敏感指令的特点和功能,研究了当前在不支持硬件
虚拟化功能的处理器架构平台上实现虚拟化的一些技术,并对基于 KVM 的轻量级泛虚
拟化技术进行了深入研究,分析了它的处理异常和硬件中断的方式,用陷阱机制可以简
化对敏感指令的处理。基于这些研究,给出了一种在 ARM 架构平台上实现 KVM 虚拟
机的方案,详细设计方案中的虚拟机实现机制,包括:虚拟 CPU 机制、影子页表和共
享页的创建、内存保护机制、向虚拟内存中映射中断响应程序的方式等。论文给出的虚
拟机方案是一种全虚拟化方案,不需要修改客户操作系统内核,可以满足在 ARM 架构
上运行 Linux 内核虚拟机的需求。
关键词:嵌入式系统,ARM 处理器,Linux 内核虚拟机
I
华中科技大学硕士学位论文
Abstract
Since virtualization technology could ease the management puter system and
increase the portability, the reliability and the security of the system, it has e to be an
important research area puter technology and application. Embedded system is
ing to be an puting system. Then, the same to pter system,
embedded system should also face to the requirements, such as the system management, the
reliability, the adaptability of the software, the security and so on. So it’s significative for
embedded system to invoke virtualization technology. Linux kernel virtual machine (KVM) is
an open source virtualization technology. Since KVM works as a modle of Linux Kernel, it
has strong adaptability and performance. KVM requires that processor architecture supports
hardware virtualization. However, ARM architecture which is applied much abroad in
embedded system market doesn’t support hardware virtualization, and KVM can’t run on the
embedded system based on ARM architecture directnessly, and there is no related domestic
research at present.
The paper has researched and analysed the specialties and functions of ARM processor’s
sensitivity instructi