[发明专利]一种支持新型大页框架的KVM系统有效
| 申请号: | 201810449372.0 | 申请日: | 2018-05-11 |
| 公开(公告)号: | CN108628663B | 公开(公告)日: | 2021-08-10 |
| 发明(设计)人: | 王总辉;陈文智;徐浩 | 申请(专利权)人: | 浙江大学 |
| 主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F12/1009 |
| 代理公司: | 杭州天勤知识产权代理有限公司 33224 | 代理人: | 王琛 |
| 地址: | 310013 浙江*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 支持 新型 框架 kvm 系统 | ||
1.一种支持新型大页框架的KVM系统,包括内存虚拟化单元,其负责虚拟机的内存管理;其特征在于:所述内存虚拟化单元包括有EPT页故障处理模块和页表项删除模块,EPT页故障处理模块负责对EPT页表进行缺页处理,页表项删除模块用于在释放页时对相应的页表项进行删除;
所述EPT页故障处理模块包括:
Level计算子模块,判断EPT页表中所缺的EPT页表项为4KB页表项或是2M页表项;
地址转换子模块,根据Level计算子模块的判断结果将虚拟机页帧号GFN转换成宿主机物理地址HPA,进而利用相关API将该宿主机物理地址HPA转换成物理页帧号PFN;
EPT页表填写子模块,利用物理页帧号PFN反推算出最终所需的宿主机物理地址HPA并填入EPT页表项中;
所述地址转换子模块将虚拟机页帧号GFN转换成宿主机物理地址HPA的具体操作过程如下:
(1)对虚拟机页帧号GFN进行预处理:若宿主机给虚拟机分配的页大小host_Level=2M,则根据公式GFN'=GFN-GFN%512进行预处理,GFN'为预处理后的虚拟机页帧号,%为取模运算符;除此之外保持GFN不变即GFN'=GFN;
(2)通过查找GFN'对应的memslot计算出GFN'对应的宿主机虚拟地址HVA;
(3)根据得到的宿主机虚拟地址HVA遍历查询宿主机页表,若从中找到HVA-HPA的映射关系,即可直接得到大页模式下的宿主机物理地址HPA';若从中无法找到HVA-HPA的映射关系,则进入宿主机页故障处理流程并最终得到大页模式下的宿主机物理地址HPA';
(4)通过大页模式下的宿主机物理地址HPA'得到对应的struct hugepage结构,此时若Level=4KB,则根据公式pfn_offset=HVA%221计算最终所需的宿主机物理地址HPA与大页模式下的宿主机物理地址HPA'的偏移pfn_offset,并将其存入struct hugepage结构中;若Level=2M,则令偏移pfn_offset=0;
(5)将大页模式下的宿主机物理地址HPA'加上偏移pfn_offset即得到最终所需的宿主机物理地址HPA,进而利用相关API将宿主机物理地址HPA转换成物理页帧号PFN并返回至上层函数。
2.根据权利要求1所述的KVM系统,其特征在于:所述KVM系统运行于宿主机内核上,宿主机利用其硬件探测到虚拟机关于查找其页帧号GFN对应的宿主机物理地址HPA的请求,并从宿主机内核中的EPT页表中查询虚拟机页帧号GFN所对应的宿主机物理地址HPA,若找到则直接访问该宿主机物理地址HPA进行相关物理内存操作;若找不到,则触发KVM系统中的EPT页故障处理模块,同时利用用户态的虚拟机管理软件负责将虚拟机页帧号GFN传入EPT页故障处理模块中。
3.根据权利要求1所述的KVM系统,其特征在于:所述Level计算子模块判断EPT页表中所缺的EPT页表项为4KB页表项或是2M页表项,具体方法为:比较A和host_Level的大小,取较小值为Level,若Level=4KB,则判定所缺的EPT页表项为4KB页表项;若Level=2M,则判定所缺的EPT页表项为2M页表项;其中,A为KVM内部允许分配的页大小,host_Level为宿主机给虚拟机分配的页大小。
4.根据权利要求1所述的KVM系统,其特征在于:所述页表项删除模块遍历查找所有残留的EPT页表项并进而删除,即通过遍历整个大页对应的宿主机虚拟地址HVA范围并对每个HVA尝试进行EPT页表项删除操作。
5.根据权利要求1所述的KVM系统,其特征在于:通过对KVM和PHPA框架进行修改,使两者有机结合起来,使得PHPA大页框架具有很好的扩展性,解决了Linux hugetlbfs静态大页很多问题;此外,通过进一步修改KVM实现了对虚拟机冷热页的统计,最终形成了一个新的KVM系统,使得PHPA框架从实验室走向工业界迈出了非常关键的一步。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810449372.0/1.html,转载请声明来源钻瓜专利网。





