论文部分内容阅读
虚拟化技术已经在很多的领域中得到了广泛的应用,而且它还将在更多的领域得到发展,因此,对它的研究也已经成为了当前计算机领域的一个热门方向。今天的大部分服务器平台和桌面平台中都已经添加了对虚拟化的支持,但这只是解决了硬件处理器层如何更好的支持虚拟化的问题。为了使虚拟化解决方案更加的高效,计算机系统的各个层次都逐渐的加入了对虚拟化的硬件支持,形成一个能为虚拟化提供更好支持的硬件虚拟化生态系统。I/O虚拟化作为虚拟化技术的一个重要组成部分,也自然成为了学术界和产业界的研究焦点。英特尔公司于2007年发布了VT-d技术(Virtualization Technology for Direct I/O,硬件辅助直接I/O虚拟化技术,简称VT-d技术),通过引入DMA重映射硬件,为I/O虚拟化提供更好的支持。VT-d技术不同于传统的I/O虚拟化技术,它采用了硬件辅助虚拟化的方法,借助于DMA重映射技术和设备直接分配技术来实现I/O虚拟化,从而能够显著的提高客户机I/O访问的性能。本文首先介绍了虚拟化技术和XEN虚拟机的基本原理。接着对XEN中I/O虚拟化模型进行分析,总结了XEN中I/O虚拟化模型存在的不足之处。针对XEN中I/O虚拟化模型存在的不足,提出了基于VT-d技术的新型I/O虚拟化的整体设计方案,并对该方案进行了详细的阐述。根据该设计方案,在XEN中具体编码实现了基于VT-d技术的新型I/O虚拟化系统,主要包括DMA重映射模块的编码实现和设备直接分配模块的编码实现。最后通过一系列的测试用例,把基于VT-d技术的I/O虚拟化和传统的I/O虚拟化技术进行比较,用测试数据证明基于VT-d技术的I/O虚拟化有效的提高了虚拟机的性能,能很好的满足服务器平台对高性能I/O的需求。