[发明专利]一种新型基于影子页表机制的内存虚拟化方法与系统有效
申请号: | 202011085016.9 | 申请日: | 2020-10-12 |
公开(公告)号: | CN112363960B | 公开(公告)日: | 2022-07-22 |
发明(设计)人: | 沙赛;罗英伟;汪小林;张毅 | 申请(专利权)人: | 北京大学;无锡先进技术研究院 |
主分类号: | G06F12/1009 | 分类号: | G06F12/1009;G06F9/455;G06F9/50 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 邱晓锋 |
地址: | 100871 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 新型 基于 影子 机制 内存 虚拟 方法 系统 | ||
本发明涉及一种新型基于影子页表机制的内存虚拟化方法与系统。该方法的步骤包括:捕获客户机操作系统发出的TLB刷新指令,并解码TLB刷新指令,以相同的粒度使相应的影子页表项无效;当CPU访问TLB发生TLB未命中时,内存管理单元查询影子页表,在发现相应的影子页表项无效后,进行缺页处理来修正影子页表;利用缺页处理后的影子页表完成客户机虚拟地址到宿主机物理地址的地址转换。本发明利用TLB与影子页表同时刷新的方式来同步影子页表与客户机进程页表,从根本上消除了传统影子页表的写保护同步开销大的弊端,同时相较于硬件辅助虚拟化技术,无需引入额外的页表查询开销,显著提高了内存虚拟化效率。
技术领域
本发明涉及服务器内存虚拟化优化领域,尤其涉及一种基于影子页表机制的内存虚拟化方法与系统。
背景技术
虚拟化是支持云服务的关键技术。减少虚拟化开销以接近本机性能一直是虚拟化工作的优化目标。内存虚拟化是系统虚拟化技术的主要组成部分,其效率会严重影响虚拟机的性能。在虚拟化环境中,每个虚拟机都有自己的虚拟硬件(例如CPU,内存等)即拥有单独且完整的执行环境。虚拟化引入了新的系统软件层,称为虚拟机监控程序(或虚拟机监视器),它控制客户机操作系对物理资源的访问。虚拟机监控程序(如KVM)介于宿主机和客户机之间,客户机运行在虚拟机监控程序之上。客户机用户感知到自己运行在原生环境(宿主机环境),虚拟机监控程序需要“欺骗”客户机以达到这种目标,这种“欺骗”叫做虚拟化。
在计算机系统中,程序操作的是虚拟地址,所以CPU访问内存需要首先进行将虚拟地址转化成物理地址,这称之为地址转换。在地址转换中,CPU首先访问旁路转换缓存(translation lookaside buffer,TLB)。TLB是存储容量较小的硬件设备,直接保存从虚拟地址到物理地址的映射关系。因为TLB是硬件设备,所以CPU访问TLB效率很高,大约2~5个CPU周期。如果TLB中不存在需要的映射即产生TLB缺失,那么CPU开始访问进程页表进一步查询映射关系。进程页表是在内存中的保存虚实地址转换关系的页面。进程页表一般有多级,比如64位机器的进程页表有4级,这意味着每一次页表访问至少需要访存4次。一次内存访问的效率较低,一般需要数百个CPU周期。如果页表中也不存在所需的映射关系,系统就会进入页表缺页处理函数。该函数负责建立虚实地址映射关系并填充进程页表。
操作系统具有两个典型的内存管理原则。首先是内存从物理地址零开始,另一个是内存是连续的或至少以大粒度连续的。为了满足上述原则,虚拟机监控程序引入了一个称为客户机物理地址空间的新地址空间。因此,内存虚拟化主要解决了两个问题。一种是维护从客户机物理地址到宿主机物理地址的映射。另一种是拦截客户机对客户机物理地址的访问并将其转换为宿主机物理地址。在虚拟化环境中,地址转换包括两层,即从客户机虚拟地址到客户机物理地址的转换和从客户机物理地址到宿主机物理地址的转换。
现有的内存虚拟化技术有两种不同的方案:以传统影子页表为代表的软件内存虚拟化和以英特尔拓展页表为代表的硬件辅助虚拟化。传统影子页表机制利用影子页表直接存储客户机虚拟地址到宿主机物理地址的映射。对于虚拟机进程而言,实际加载到物理内存管理单元中的是进程影子页表而不是进程页表。通过这种方式,虚拟机进程只需要一层地址转换就可完成从客户机虚拟地址到宿主机物理地址的地址转换。由此,虚拟机进程页表查询的成本和原生环境相同。然而为了保持客户机进程页表和影子页表之间的一致性,传统影子页表采用写保护的机制进行同步。所谓写保护,就是将客户机进程页表页设置为只读,进程页表的任何修改都将导致写错误,虚拟机监控程序可以拦截客户机进程页表的更新,然后进行同步。传统影子页表机制的缺点就是因为写保护同步带来了大量额外的缺页处理开销。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学;无锡先进技术研究院,未经北京大学;无锡先进技术研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011085016.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种多功能气缸
- 下一篇:一种拓宽质谱仪检测质量范围的方法及装置