[发明专利]虚拟机共享内核内存的方法及装置有效
申请号: | 201911394701.7 | 申请日: | 2019-12-30 |
公开(公告)号: | CN111190752B | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 藏洪永 | 申请(专利权)人: | 海光信息技术股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/455 |
代理公司: | 北京超凡宏宇专利代理事务所(特殊普通合伙) 11463 | 代理人: | 何明伦 |
地址: | 300450 天津市滨海新区天津华苑*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟机 共享 内核 内存 方法 装置 | ||
1.一种虚拟机共享内核内存的方法,包括:
启动第一虚拟机,所述第一虚拟机具有用于第一虚拟机物理地址到宿主机物理地址的映射的第一二维页表,并且所述第一虚拟机的内核被加载和锁定在宿主机物理内存中;
启动第二虚拟机,所述第二虚拟机具有用于第二虚拟机物理地址到宿主机物理地址的映射的第二二维页表,所述第二二维页表映射到所述第一虚拟机的内核在宿主机物理内存中的地址,使得所述第一虚拟机和所述第二虚拟机共享内核内存;以及
当接收到所述第二虚拟机的写内存操作时,在宿主机物理内存中分配用于所述写内存操作的新内存页,并且更新所述第二二维页表。
2.如权利要求1所述的方法,所述方法还包括在启动所述第一虚拟机后暂停所述第一虚拟机。
3.如权利要求1所述的方法,还包括将所述第二二维页表的每一个表项的权限初始化为只读。
4.如权利要求1所述的方法,其中,更新所述第二二维页表包括:
使得与所述写内存操作相关的表项映射到所述新内存页的宿主机物理内存地址,并修改所述表项的权限为可读可写。
5.如权利要求1-4任一项所述的方法,其中,所述第二虚拟机还具有转译后备缓冲器TLB,所述TLB用于所述第二虚拟机的虚拟机虚拟地址到宿主机物理地址的映射,所述方法还包括更新所述TLB,使得与所述写内存操作相关的虚拟机虚拟地址映射到所述新内存页的宿主机物理内存地址。
6.如权利要求1-4任一项所述的方法,其中,所述二维页表包括扩展页表、嵌套页表、二级页表之一。
7.一种虚拟机共享内核内存的装置,包括:
第一启动单元,被配置用于启动第一虚拟机,所述第一虚拟机具有用于第一虚拟机物理地址到宿主机物理地址的映射的第一二维页表,并且所述第一虚拟机的内核被加载和锁定在宿主机物理内存中;
第二启动单元,被配置用于启动第二虚拟机,所述第二虚拟机具有用于第二虚拟机物理地址到宿主机物理地址的映射的第二二维页表,所述第二二维页表映射到所述第一虚拟机的内核在宿主机物理内存中的地址,使得所述第一虚拟机和所述第二虚拟机共享内核内存;以及
写内存操作处理单元,被配置用于当接收到所述第二虚拟机的写内存操作时,在宿主机物理内存中分配用于所述写内存操作的新内存页,并且更新所述第二二维页表。
8.如权利要求7所述的装置,其中,所述第一启动单元还被配置用于在启动所述第一虚拟机后暂停所述第一虚拟机。
9.如权利要求7所述的装置,其中,所述第二启动单元还被配置用于将所述第二二维页表的每一个表项的权限初始化为只读。
10.如权利要求7所述的装置,其中,所述写内存操作处理单元还被配置用于:使得与所述写内存操作相关的表项映射到所述新内存页的宿主机物理内存地址,并修改所述表项的权限为可读可写。
11.如权利要求7-10任一项所述的装置,其中,所述第二虚拟机还具有转译后备缓冲器TLB,所述TLB用于所述第二虚拟机的虚拟机虚拟地址到宿主机物理地址的映射,所述写内存操作处理单元还被配置用于:更新所述TLB,使得与所述写内存操作相关的虚拟机虚拟地址映射到所述新内存页的宿主机物理内存地址。
12.如权利要求7-10任一项所述的装置,其中,所述二维页表包括扩展页表、嵌套页表、二级页表之一。
13.一种系统级芯片SOC,包括处理器核心和内存管理单元,所述处理器核心被配置用于执行如权利要求1-6中任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海光信息技术股份有限公司,未经海光信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911394701.7/1.html,转载请声明来源钻瓜专利网。