[发明专利]分布式内存虚拟化技术的实现方法有效
| 申请号: | 200810225086.2 | 申请日: | 2008-10-28 |
| 公开(公告)号: | CN101477495A | 公开(公告)日: | 2009-07-08 |
| 发明(设计)人: | 王箫;肖利民;张萧;祝明发;刘忠麟;李响山;彭近兵 | 申请(专利权)人: | 北京航空航天大学 |
| 主分类号: | G06F12/08 | 分类号: | G06F12/08;G06F9/455 |
| 代理公司: | 北京慧泉知识产权代理有限公司 | 代理人: | 王顺荣;唐爱华 |
| 地址: | 100191北京市海淀区学院路*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 分布式 内存 虚拟 技术 实现 方法 | ||
(一)技术领域
本发明采用最新的硬件和软件相结合的虚拟化技术,结合分布式共享存储算法将分布于多主机的内存资源进行虚拟化和整合.它涉及计算机虚拟化技术中的内存虚拟化领域以及分布式系统中的分布式共享存储领域。属于计算机技术领域。
(二)背景技术
早在上个世纪60年代末70年代初IBM公司就在大型机上实现了商用的虚拟机,诸多文献描述了IBM在OS360使用的虚拟机的实现以及经典的虚拟机体系结构并描述了利用虚拟机监控器实现虚拟化的方法。研究人员总结了第三代计算机可虚拟性(Virtualizability):指出可虚拟性主要依赖于计算机指令集中敏感指令集的存在方式。同时总结了可虚拟性的两个重要定理:
定理一:对于任何通常意义上的第三代计算机,如果该计算机敏感指令集是特权指令集的子集,就可以在此计算机上创建一个虚拟机监控器。
定理二:对于任何通常意义上的第三代计算机,如果该计算机的用户敏感指令集是特权指令集的子集,就可以在此计算机上创建一个混合式(hybrid)的虚拟机监控器。
由于大多数计算机并不满足定理一的要求,所以一些文献放松了要求:只要符合定理二的要求就可以利用陷入-模拟的方式(trap-and-emulate)完成虚拟化。可虚拟化的关键是对敏感的非特权指令的处理。对这种指令的不同处理方式引发了下面几种不同的虚拟化方式。
1)基于二进制翻译的全虚拟化(Full Virtualization with BinaryTranslation)。这种方式动态的扫描二进制代码,将敏感指令替换为跳转到相应模拟例程。通过这种方式避免敏感指令的产生。VMware公司已经可以提供基于这种方式的商业化解决方案。这是目前唯一的在IA32/Intel 64体系结构下不需要特殊硬件辅助实现全虚拟化的方式。但这种方案也存在明显的缺陷:由于要动态的监控并即时翻译二进制码,性能上会有所损失。
2)硬件辅助的虚拟化(Hardware Assisted Virtualization)。这种方式通过扩展指令集,通过硬件完成传统虚拟机监控器(Virtual Machine Monitor,VMM)所需要的陷入以及状态切换。通过这种方式可以极大地简化虚拟机的设计。但是由于硬件在状态切换的时候会保存整个处理器的状态并切换地址空间,由此带来的开销不可忽略,特别是在虚拟机与虚拟机监控器频繁切换的情况下。本发明专利采用的就是这种方式实现VMM。
3)准虚拟化(Para-virtualization)。这种方式通过静态的改写客户操作系统源代码,通过客户操作系统与虚拟机监控器显示协作的方式完成虚拟化策略。开放源代码的虚拟机监控器Xen就是基于这种技术。这种技术通过VM对VMM 的感知,避免了传统陷入-模拟方式效率较低的问题,但需要对客户操作系统源代码进行修改。
内存虚拟化:
内存虚拟化技术是虚拟化技术的分支,主要的作用是为虚拟机提供虚拟化的地址空间地址变换。主流的内存虚拟化技术有如下几种:
1)基于超级调用(Hypercall)的准虚拟化方式:这种方式的特点是改写客户操作系统源代码,将所有MMU相关的操作都通过超级调用的方式请求VMM协助完成。这方面典型的代表为Xen支持的准虚拟化虚拟机。
2)基于影子页表(Shadow Pagetable,SPT)的全虚拟化方式:这种方式的主要特点是硬件使用与客户页表对应的影子页表进行寻址。主要代表为Xen与VirtualIron。这种方式的优势在于在缺少硬件支持的情况下达到较高的性能。缺点是实现复杂,特别对于支持多种寻址方式的处理器。
3)硬件辅助的内存虚拟化方式:这种方式的原理是通过在传统的页表层次之下添加一个由VMM维护的额外层次,处理器寻址时一次查询客户页表以及该额外页表层次,完成寻址。AMD公司的内嵌式分页(Nested Paging)以及Intel公司的扩展分页(Extended Paging)就是这种技术的代表。
4)影子TLB方式(Shadow TLB):在软件可控TLB体系结构上,VMM可以通过捕获TLB缺失(TLB miss),按照与影子页表类似的方式完成内存的虚拟化。在软件可控TLB的体系结构上实现的虚拟机大多采用这种方式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810225086.2/2.html,转载请声明来源钻瓜专利网。





