预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN111913893A(43)申请公布日2020.11.10(21)申请号202010574039.X(22)申请日2020.06.22(71)申请人成都菁蓉联创科技有限公司地址610000四川省成都市中国(四川)自由贸易试验区成都高新区益州大道北段777号4栋1层附1090号(72)发明人张昆郑国玲王大维(74)专利代理机构北京细软智谷知识产权代理有限责任公司11471代理人谭承世(51)Int.Cl.G06F12/1027(2016.01)权利要求书2页说明书6页附图4页(54)发明名称保留内存的映射方法和装置、设备和存储介质(57)摘要本发明涉及计算机技术领域,具体来说,涉及一种保留内存的映射方法和装置、设备和存储介质。具体的,保留内存的映射方法包括:在保留内存的系统预设目录中,创建不同页面大小的巨页设备;确定应用需要使用的巨页的页面大小;打开确定的页面大小相应的目标巨页设备;使用所述目标巨页设备进行应用的映射。如此设置,在保留内存中采用巨页的方式进行文件的映射,同时,通过预先建设不同大小的页面设备,并为每一个应用匹配对应大小的预先建设的页面设备,可以更加灵活的使用巨页设备,能够有效降低tlbmiss。更进一步的,本申请提供的方案中可以灵活的为应用提供巨页设备,更加有效的提升保留内存访问性能。CN111913893ACN111913893A权利要求书1/2页1.一种保留内存的映射方法,其特征在于,包括:在保留内存的系统预设目录中,创建不同页面大小的巨页设备;确定应用需要使用的巨页的页面大小;打开确定的页面大小相应的目标巨页设备;使用所述目标巨页设备进行应用的映射。2.根据权利要求1所述的保留内存的映射方法,其特征在于,所述创建不同页面大小的巨页设备,包括:在系统/dev目录中,以hugepage为文件名前缀,创建不同页面大小的巨页设备。3.根据权利要求1所述的保留内存的映射方法,其特征在于,所述创建的巨页设备的大小包括:512kb、1M和2M。4.根据权利要求1所述的保留内存的映射方法,其特征在于,所述使用所述目标巨页设备进行应用的映射包括:保存打开所述目标巨页设备的文件描述符;使用所述保存文件描述符进行mmap映射;检查映射物理区间的合法性:若不合法,返回到用户态,返回相应错误码;若合法,所述目标巨页设备使用巨页映射对相应的物理地址区间范围进行映射,对应巨页页表项将直接写入该应用页表中,并返回映射的虚拟地址。5.根据权利要求4所述的保留内存的映射方法,其特征在于,所述检查映射物理区间的合法性,包括:mmap系统调用内核底层实现检查映射物理区间的合法性;其中,满足合法性要求为:起始地址和长度都必须为所述目标巨页设备相应巨页大小单位的整数倍。6.根据权利要求4所述的保留内存的映射方法,其特征在于,还包括:基于目标巨页设备,执行解映射。7.根据权利要求6所述的保留内存的映射方法,其特征在于,所述基于目标巨页设备,执行解映射,包括:通过所述虚拟地址,结合长度调用munmap进行解映射操作;判断解映射区间是否属于巨页区间;若是,进入巨页解映射流程,清除页表中的巨页映射表项;否则,进入普通解映射流程。8.一种保留内存的映射装置,其特征在于,包括:创建模块,用于在保留内存的系统预设目录中,创建不同页面大小的巨页设备;确定模块,用于确定应用需要使用的巨页的页面大小;映射模块,用于打开确定的页面大小相应的目标巨页设备,使用所述目标巨页设备进行应用的映射。9.一种保留内存的映射设备,其特征在于,包括:处理器,以及与所述处理器相连接的存储器;所述存储器用于存储计算机程序,所述计算机程序至少用于执行权利要求1-7任一项2CN111913893A权利要求书2/2页所述的保留内存的映射方法;所述处理器用于调用并执行所述存储器中的所述计算机程序。10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1-7任一项所述的保留内存的映射方法中各个步骤。3CN111913893A说明书1/6页保留内存的映射方法和装置、设备和存储介质技术领域[0001]本发明涉及计算机技术领域,具体来说,涉及一种保留内存的映射方法和装置、设备和存储介质。背景技术[0002]Linux系统应用广泛,已全面涵盖服务器、桌面和嵌入式,涉及电信、金融、政府、教育、银行、石油等行业。部分行业,例如电信,对系统性能要求较高,加之5G的到来,系统任何部分的性能瓶颈都应尽力消除。[0003]Linux虚拟内存管理解决了程序运行受内存限制的问题,其依赖的页表映射也带来了性能问题,由于页表一般位于内存,访问页表必然导致性能开销,TLB(TranslationLooka