学位论文 > 优秀研究生学位论文题录展示

VMX虚拟机设备模型设计研究与虚拟网卡实现

作 者: 赵凡
导 师: 刘凤玉
学 校: 南京理工大学
专 业: 计算机应用技术
关键词: VT-x Xen虚拟机 VMX虚拟机 设备模型 Ne2000网卡
分类号: TP391.9
类 型: 硕士论文
年 份: 2006年
下 载: 347次
引 用: 3次
阅 读: 论文下载
 

内容摘要


随着互联网的发展,对软件兼容性和可移植性需求剧增,虚拟机的发展进入了一个繁荣的时代。同时,随着x86服务器市场的快速增长,x86虚拟机更是为人们看好。根据VMM(Virtual Machine Monitor)抽象的虚拟机架构的不同,或根据是否需要修改客户操作系统,虚拟化技术又可以分为泛虚拟化(Paravirtualization)和完全虚拟化(Full-virtualization)。所以目前x86平台下的主流虚拟机有两种:完全虚拟实现方案VMware,它不需要修改就可以直接运行各种主流操作系统,但虚拟机的性能消耗很大;泛虚拟实现方案Xen,虚拟机中的操作系统需要修改小量的平台相关代码,与虚拟机管理器配合工作性能出色,但该方案无法应用于闭源的Windows主流操作系统。 市场的驱动催生了VT-x,Intel在芯片级为对虚拟机提供支持的一种技术。VT-x大大提升了VMM对虚拟机的掌控灵活性和粒度,而且充分考虑了如何有效减小虚拟机的开销。利用Xen开源和性能优异的特点,Intel Linux VMM小组在其基础上加入了对VT-x技术的支持,提出了VMX虚拟机模型,目标是要实现高性能的纯虚拟实现方案,克服Vmware和Xen各自的弊端。对VT-x的支持已经是Xen3.0中的一部分。 为了使Xen支持VT-x技术,在Xen的基础上进行一定程度的改进和扩充,很重要的一部分就是模拟PC平台的设备模型(Device Model)。设备模型(Device Model)提供了对一个VMX虚拟域的PC平台设备的模拟。它作为一个软件模型模拟了所有的硬件级编程接口,从而使得一个普通的未经修改的设备驱动程序可以用这些接口来进行I/O操作,站在VMX虚拟域的角度向一个物理设备提交请求。 在设备模型的实现中,论文借鉴了QEMU PC平台模拟器,它提供了为VMX虚拟域进行I/O模拟的大多数功能。本论文设计是将设备模型运行在虚拟域0的用户空间,然后为每个VMX虚拟域运行一个进程,即将所有的CPU模拟的代码从这些模拟器中移除出去,并且修改那些模拟物理内存(RAM)的代码。 论文在对设备模型的体系结构进行研究的基础上,实现了虚拟的Ne2000网卡。主要的工作包括对Ne2000的工作流程进行了细致的分析和研究,并将其用软件进行模拟,然后再结合设备模型的体系结构,引入事件驱动机制,将Ne2000加入到设备模型当中。应用结果表明,引入的虚拟Ne2000网卡可以在VMX虚拟机设备模型中流畅的工作,并且具有较好的性能。

全文目录


摘要  3-4
Abstract  4-6
目录  6-8
图表目录  8-9
1 引言  9-18
  1.1 研究背景  9-10
  1.2 经典的虚拟机模型  10-13
    1.2.1 虚拟化技术分类  12
    1.2.2 VMM(虚拟机监控器)分类  12-13
  1.3 虚拟化技术的最新进展  13-16
    1.3.1 VMWare  13-15
    1.3.2 Xen  15-16
    1.3.3 其他软件虚拟化技术  16
  1.4 研究任务及目标  16-17
  1.5 本文主要工作及论文结构  17-18
2 VMX虚拟机模型  18-31
  2.1 Intel的VT-x技术  18-23
    2.1.1 虚拟机控制结构(VMCS)  19-21
    2.1.2 新增操作码  21-22
    2.1.3 vMEntry和VMExit操作  22-23
  2.2 Xen对VT-x的支持  23
  2.3 VMX虚拟机的生命周期  23-24
  2.4 VMX虚拟机模型体系结构  24-30
    2.4.1 超调用Hypercall  26-27
    2.4.2 虚拟设备  27-28
    2.4.3 事件通道(Event Channel)  28
    2.4.4 虚拟内存  28-30
  2.5 本章小结  30-31
3 VMX虚拟机的虚拟设备模型(Device Model)的研究与设计  31-43
  3.1 Xen的设备虚拟化  31-33
  3.2 VMX虚拟设备模型的体系结构  33-38
    3.2.1 设备模型处理的事件  33-34
    3.2.2 设备模型的整体框架  34-35
    3.2.3 设备模型的组成元素  35-38
  3.3 VMX虚拟机的设备虚拟化  38-39
  3.4 VMX虚拟设备的I/O请求流程  39-40
  3.5 VMX虚拟设备的中断消息传送流程  40-41
  3.6 本章小结  41-43
4 VMX虚拟机的虚拟网卡设计  43-67
  4.1 ne2000的工作原理  43-52
    4.1.1 直接内存访问控制(DMA)  43-44
    4.1.2 包的接收  44-49
    4.1.3 包的发送  49
    4.1.4 远程DMA(Remote DMA)  49-50
    4.1.5 命令寄存器  50-51
    4.1.6 DMA寄存器  51-52
  4.2 虚拟网卡驱动tun/tap  52-55
    4.2.1 使用tun/tap驱动  53
    4.2.2 Tun/tap驱动程序工作原理  53-54
    4.2.3 Tun/tap设备的工作过程  54-55
    4.2.4 ne2000虚拟网卡对tun设备的使用  55
  4.3 ne2000网卡的虚拟化实现  55-60
    4.3.1 ne2000网卡的状态表示及存储  55-57
    4.3.2 包的接收  57-58
    4.3.3 写I/O操作  58-59
    4.3.4 读I/O操作  59-60
  4.4 将虚拟ne2000网卡加入VMX虚拟机虚拟设备模型的具体实现  60-66
    4.4.1 初始化  60-61
    4.4.2 事件机制  61-63
    4.4.3 虚拟网卡ne2000的I/O请求的执行流程  63-65
    4.4.4 虚拟Ne2000网卡的中断递送流程  65-66
  4.5 本章小结  66-67
5 仿真实验与结果分析  67-77
  5.1 实验环境的搭建  67-68
    5.1.1 硬件环境  67
    5.1.2 软件环境  67-68
  5.2 实验思路  68-70
  5.3 实例测试  70-71
    5.3.1 sericuty cp  70
    5.3.2 netperf  70-71
  5.4 测试结果及实验结论  71-77
    5.4.1 Security cp测试  71-75
    5.4.2 netperf测试结果  75-76
    5.4.3 本章小结  76-77
6 总结和展望  77-78
  6.1 结论  77
  6.2 未来研究方向  77-78
致谢  78-79
参考文献  79-80

相似论文

  1. 车联网系统架构及其关键技术研究,TN929.5
  2. 基于U2TP的CTCS-3级车载设备测试用例的生成方法研究,TP273
  3. 基于硬件虚拟技术的Rootkit检测技术研究,TP393.08
  4. 恶意软件行为分析及变种检测技术研究,TP309.5
  5. 带附加算子的剩余格及其滤子理论研究,O153.1
  6. 基于硬件支持的USB设备虚拟化框架研究,TP334.7
  7. VT菌剂在好氧堆肥中的作用机理及肥效研究,S141.4
  8. 一种虚拟可信计算平台框架的设计与实现,TP309.2
  9. 基于Intel VT硬件虚拟机内核研究与实现,TP302
  10. 虚拟化计算环境中基于QoS约束的资源分配管理技术的研究,TP393.02
  11. 移动环境中三维图形传输机制与流水线优化算法研究,TN929.5
  12. 集成电路工艺模拟的设备模型研究,TN405
  13. 硬件虚拟机Xen的研究和性能优化,TP311.56
  14. 基于嵌入式Linux 2.6系统的驱动设计,TP316.81
  15. 基于半虚拟化设备模型的域间数据传输系统,TN919.6
  16. 电力系统绝缘配合软件设备模型库建立与图形用户界面开发,TP311.52
  17. XEN虚拟机资源分配策略研究,TP302
  18. SMART-VMM:基于VT-x的虚拟机监控器设计与实现,TP302
  19. 基于Xen安全计算机虚拟设备模型研究及显示优化的实现,TP302
  20. 虚拟机平台下虚拟资源的自适应分配策略与机制研究,TP302

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机的应用 > 信息处理(信息加工) > 计算机仿真
© 2012 www.xueweilunwen.com