[发明专利]用于修补页的系统、方法和装置在审
申请号: | 201880063321.2 | 申请日: | 2018-12-07 |
公开(公告)号: | CN111164581A | 公开(公告)日: | 2020-05-15 |
发明(设计)人: | D·谢里登 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F12/1036 | 分类号: | G06F12/1036;G06F9/455 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 黄嵩泉;何焜 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 修补 系统 方法 装置 | ||
描述了用于对页进行修补的系统、方法和装置。例如,描述了一种方法,该方法包括:分配小尺寸页并初始化该小尺寸页;将所分配且经初始化的小尺寸页添加到小尺寸页表以反映对巨大尺寸页的补丁的使用;以及置位与该巨大尺寸页相关联的页条目中的对使用补丁的指示。
背景技术
在计算机系统中,硬件存储器映射支持特定的虚拟存储器页尺寸集合。例如,一些处理器支持包括4千字节页、2兆字节页、1千兆字节页、16千兆字节页等的许多不同的页尺寸。操作系统和虚拟机管理程序中常见的优化在于支持透明的页共享。也就是说,两个进程共享公共物理存储器页而不是在存储器中具有它们自己的副本。例如,在Linux和Unix操作系统中,当第一进程分叉时,第二(新的)进程逻辑地包含第一(原始)进程的地址空间的完整副本。然而,操作系统允许这两个进程共享对原始页集合的访问,而不是实际地复制所有的页。为了使这对进程透明,操作系统对这些页进行写入保护,以使得如果任一进程尝试向此类共享页写入,则操作系统可以进行干预。典型地,操作系统通过以下操作来进行干预:俘获对共享页的尝试写入,复制受影响的页,修订写入进程的页映射以引用该新的(所复制的)页,并且随后允许对所复制的页完成写入。该动作是作为“写入时复制”(COW)公知的。
附图说明
将参考附图来描述根据本公开的各实施例,其中:
图1是计算系统的实施例的示意性图示;
图2图示出共享页帧的不同虚拟地址空间的示例;
图3图示出共享页帧的不同虚拟地址空间的另一示例;
图4图示出共享使用补丁用于经修改的页的页帧的不同虚拟地址空间的示例;
图5图示出支持页修补的处理器核的电路的示例;
图6图示出利用分页结构来判定是否存在补丁页的实施例;
图7图示出使用针对经修补的页的4级分页进行的到2MB页的线性地址转换的实施例;
图8图示出根据实施例的支持补丁的针对2MB页的PDE的示例;
图9图示出使用针对经修补的页的4级分页进行的到4KB补丁页的线性地址转换的实施例;
图10图示出指示修补的巨大尺寸页TLB条目的实施例;
图11图示出实施例中的位掩码使用;
图12图示出根据实施例的小尺寸页TLB中的TLB条目的示例;
图13图示出用于在线程执行期间使用补丁页的写入时复制流程的方法的实施例;
图14图示出用于在MMU中使用经修补的页的方法的实施例;
图15是图示出根据本发明的实施例的示例性有序流水线和示例性的寄存器重命名的乱序发布/执行流水线的框图;
图16A-图16B图示出更具体的示例性有序核架构的框图,该核将是芯片中的若干逻辑块中的一个(包括相同类型和/或不同类型的其他核);
图17是根据本发明的实施例可以具有多于一个的核、可以具有集成存储器控制器以及可以具有集成图形器件的处理器1700的框图;
图18示出根据本发明的一个实施例的系统的框图;
图19是根据本发明的实施例的第一更具体的示例性系统的框图;
图20是根据本发明的实施例的第二更具体的示例性系统的框图;
图21是根据本发明的实施例的SoC的框图;以及
图22是根据本发明的实施例的对照使用软件指令转换器将源指令集中的二进制指令转换成目标指令集中的二进制指令的框图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201880063321.2/2.html,转载请声明来源钻瓜专利网。