首页> 中文学位 >基于硬件支持的USB设备虚拟化框架研究
【6h】

基于硬件支持的USB设备虚拟化框架研究

代理获取

目录

封面

声明

中文摘要

英文摘要

目录

1 绪 论

1.1 课题背景及国内外研究现状

1.2 本文主要工作

1.3 本文结构

2 虚拟化技术介绍

2.1 虚拟化技术综述

2.2 虚拟化的几大部分

2.3 系统虚拟化分类

2.4 典型的虚拟化产品

3 KVM虚拟机构架及I/O虚拟化

3.1 KVM虚拟化构架及I/O虚拟化

3.2 硬件辅助虚拟化技术

3.3 I/O虚拟化需要处理的几个方面

4 USB设备及其虚拟化框架

4.1 USB设备特性及其驱动

4.2 USB设备虚拟化框架研究与实现

5 USB虚拟化性能评测

5.1 实验环境与方法

5.2实验结果

5.3性能对比与分析

6 全文总结与展望

6.1 结论

6.2研究展望

参考文献

致谢

攻读学位期间发表的学术论文目录

展开▼

摘要

系统虚拟化在近年已成为学术界和产业界的热点。它通过在操作系统和硬件之间增加虚拟机监视器(VMM)一层,能在一台物理机上管理并运行多台客户机操作系统。每台客户机就像独自占有所有硬件资源,正如32位系统上的普通进程以为一直占有CPU和4G内存空间。它能高效管理各个客户机系统,实现客户机之间的有效隔离,既能增强资源利用率,又可以实现系统安全性。同时,虚拟化技术能在非停机的情况下高效地进行系统迁移,快照和克隆。这些特性使其能很好地应用于服务器整合,实现动态负载均衡,也方便进行灾难备份与恢复,以此提高系统的效率,可用性和安全性。
  I/O虚拟化是系统虚拟化的重要部分。I/O设备种类繁多,厂商、型号、版本不一,驱动纷繁复杂,是整个虚拟系统普及应用的一大瓶颈。而增加VMM层后,设备和进程间的信号传递和数据传输变得更长更复杂,也极大的影响了系统性能。学术界中,Xen主要采用PV的方法,非特权级虚拟机中的驱动为前端,它请求I/O操作而不直接处理,以保证硬件的安全;特权级虚拟机中的驱动为后端,和I/O设备交互完成硬件操作并返回给前端。这种前后端模型可以解决虚拟机安全及I/O兼容性问题。但这需要修改操作系统本身,工作量浩大,且需要根据操作系统的升级而作相应修改。而KVM作为另一个热门的VMM,采用QEMU进行模拟。为每个虚拟机模拟出硬件所有的I/O设备,客户机访问QEMU中的设备模型,而不是真实的I/O设备。而QEMU调用VMM提供的服务,再把结果返回到设备模型。这样,VM就可以访问设备模型而获得操作结果。这会导致频繁的上下文切换和传输路径显著增长。它不需要对VM中的操作系统做修改,但性能很差。
  硬件辅助技术能解决这些问题。借助Intel的VT-x技术,CPU执行模式除了用户态和内核态,还引进了根模式和非根模式。这样,与I/O相关的敏感指令很容易被截获,然后通过陷入再模拟的方法弥补X86构架原本存在的虚拟化漏洞。其次,EPT技术则使客户机的虚拟地址到宿主机的物理地址转换变得简单。而VT-d技术通过DMA重映射和I/O页表等方法,使得虚拟机和设备之间可以直接访问。使用这些硬件辅助技术,设计良好的I/O虚拟化技术能很方便地把I/O设备分配给虚拟机,无需修改操作系统并提供良好的访问效率,从而很好地解决上述问题。
  本课题通过在Intel支持VT及VT-d硬件虚拟化的平台和KVM虚拟机上实现一种高性能的USB虚拟化方案,来研究最新的I/O虚拟化技术。该方案应用硬件辅助技术,将USB设备从VMM的中断向量中注销,并直接分配给虚拟机。这样,虚拟机可直接访问 USB设备,获得很好的性能。它使得 USB设备的虚拟化更为高效,它比 QEMU的性能好,也不需要像PV的方法那样修改客户机操作系统。有助于虚拟化的商业应用与推广,同时对基于硬件支持的I/O虚拟化技术和虚拟机设计与应用提供借鉴和参考。
  本文的主要创新点和意义有:1)研究了主流开源虚拟机监视器的构架和Intel VT及VT-d等硬件辅助虚拟化技术;2)研究了USB设备的驱动框架和虚拟化框架;3)把硬件辅助虚拟化技术应用到 USB设备上,实现了USB设备的高效虚拟化;4)研究了USB3.0的一些特性。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号