基于Intel VT-d在安腾平台的高效虚拟IO模型的实现与研究

基于Intel VT-d在安腾平台的高效虚拟IO模型的实现与研究

论文摘要

本文在安腾平台(IA64)上设计并实现了一种高性能的虚拟I/O模型。该课题对“虚拟化技术”、“虚拟I/O技术”具有极大的意义。虚拟技术,是近年来计算机领域最为热门、最为尖端的技术之一。随着VMware公司于1999年推出第一款虚拟化产品,虚拟技术已经广泛的应用于计算机领域各个方面,例如数据中心、虚拟服务器、操作系统隔离、应用程序隔离、杀毒软件等。XEN是开源社区最成功的虚拟机项目,得到了Intel、IBM、HP、富士通、Bull、AMD等众多公司的支持。作为虚拟技术中核心技术之一的虚拟I/O技术,自设备模拟虚拟I/O模型以及泛虚拟化设备驱动虚拟I/O模型被引入后,一直没有大的发展。现在,Intel公司推出了VT-d技术,这种局面开始改观。该技术推动了虚拟技术的研究机构、公司对新的虚拟I/O模型进行探讨、研究。VT-d技术已经被PCI组织接受成为下一代PCI协议的标准规范,本文在安腾平台上首次成功的使用了VT-d技术,对以后安腾平台的操作系统、虚拟机设计有借鉴意义。本文首先介绍了虚拟技术和著名的虚拟机项目,以及当前流行虚拟I/O模型的原理和实现,分析了它们的优缺点。然后根据安腾平台的硬件特性和XEN虚拟机在安腾平台的实现,基于Intel公司的VT-d技术,设计了一种高性能的虚拟I/O模型,并在安腾平台上完成了它的实现。经过测试,该模型得到了优异的性能,满足了服务器环境对高性能I/O的要求。目前,本虚拟I/O模型已经成功为XEN社区所接受,并取得了广泛好评。

论文目录

  • 摘要
  • Abstract
  • 第一章 引言
  • 1.1 课题背景
  • 1.2 课题的意义及创新点
  • 1.3 论文的工作和安排
  • 第二章 概述
  • 2.1 安腾处理器
  • 2.2 虚拟化技术概述
  • 2.2.1 虚拟化技术的产生与发展
  • 2.2.2 XEN 开源虚拟机
  • 2.2.3 泛虚拟化技术
  • 2.2.4 全虚拟化技术
  • 2.3 国外其它最新虚拟化软件发展状况
  • 2.3.1 VMWare
  • 2.3.2 Microsoft
  • 2.3.3 KVM
  • 第三章 当前流行的虚拟I/O 模型
  • 3.1 什么是虚拟I/O 模型
  • 3.2 当前流行的虚拟I/O 模型
  • 3.2.1 设备模拟虚拟I/O 模型
  • 3.2.2 泛虚拟化设备驱动虚拟I/O 模型
  • 第四章 安腾架构下的虚拟I/O
  • 4.1 安腾架构的I/O 模型
  • 4.1.1 端口I/O
  • 4.1.2 内存映射I/O
  • 4.2 安腾平台下的XEN 虚拟机
  • 4.2.1 Intel VT-i 技术
  • 4.2.2 超级调用
  • 4.2.3 内存虚拟化
  • 4.2.3.1 地址空间
  • 4.2.3.2 P2M 表
  • 4.2.3.3 客户机TLB 虚拟化
  • 4.2.3.4 客户机VHPT 虚拟化
  • 4.2.3.5 RID 的虚拟化
  • 4.2.3.6 客户机TLB 缺失处理流程
  • 4.3 安腾架构下XEN 的虚拟I/O
  • 第五章 VT-d 综述
  • 5.1 概述
  • 5.1.1 设备直接分配
  • 5.1.2 DMA 重映射
  • 5.2 设备直接分配
  • 5.2.1 源标志符
  • 5.2.2 根条目
  • 5.2.3 上下文条目
  • 5.3 DMA 重映射数据结构
  • 5.3.1 I/O 页表
  • 5.3.2 客户机地址宽度修正值
  • 5.3.3 IOTLB
  • 第六章 直接I/O 虚拟技术模型整体设计
  • 6.1 当前虚拟I/O 模型缺点分析
  • 6.2 直接I/O 虚拟技术模型的架构设计
  • 6.3 直接I/O 虚拟技术模型解决的问题
  • 第七章 在安腾架构上实现直接I/O 虚拟技术模型
  • 7.1 向客户机0 隐藏设备
  • 7.2 设计Pass-through 设备
  • 7.2.1 初始化Pass-through 设备
  • 7.2.2 向QEMU 注册Pass-through 设备
  • 7.2.3 生成PCI Bar 映射
  • 7.2.4 配置空间处理函数的设计
  • 7.3 探测VT-d 硬件
  • 7.3.1 VT-d 硬件描述数据结构
  • 7.3.2 探测VT-d 硬件
  • 7.4 初始化VT-d 硬件
  • 7.4.1 初始化硬件和注册刷新函数
  • 7.4.2 为客户机0 分配设备
  • 7.4.3 后续工作
  • 7.5 客户机VT-d 初始化设计
  • 7.5.1 创建端口I/O、内存映射I/O 转换表
  • 7.5.2 创建客户机I/O 页表
  • 7.6 向客户机分配/剥离设备
  • 7.7 中断绑定设计
  • 7.8 直接I/O 虚拟技术模型的整体运作
  • 第八章 直接I/O 虚拟技术模型性能分析
  • 8.1 性能测试用例介绍
  • 8.2 Iperf 网络性能比较
  • 8.3 SCP 性能比较
  • 8.4 USB 性能测试
  • 8.5 小结
  • 第九章 结论
  • 致谢
  • 参考文献
  • 攻硕期间取得的研究成果
  • 相关论文文献

    标签:;  ;  

    基于Intel VT-d在安腾平台的高效虚拟IO模型的实现与研究
    下载Doc文档

    猜你喜欢