本申请涉及计算机操作系统,尤其涉及一种内存管理方法、装置、存储介质以及终端。
背景技术:
1、在现有计算机的操作系统中,为了灵活管理有限的内存空间,进程在申请访问物理内存空间时,通过查找页表中虚拟内存地址到物理内存地址的映射关系来调用正确的物理内存空间。而现有操作系统将内存空间按照4kb的大小分为一个个内存页,4kb的页面大小会导致存在大量页表项,使得页表项所占用的物理内存过多,影响计算机中物理内存性能,因此使得操作系统支持大空间内存页面的开发有很大必要。
技术实现思路
1、本申请提供一种内存管理方法、装置、存储介质以及终端,可以解决相关技术中内存空间分配不合理的技术问题。
2、第一方面,本申请实施例提供一种内存管理方法,该方法包括:
3、若访问目标虚拟内存页时发生缺页异常,则判断所述目标虚拟内存页是否满足预设对齐条件,所述预设对齐条件根据预设大页内存空间设置;
4、若满足,则确定虚拟地址空间中内存空间等于所述预设大页内存空间的复合内存页,所述复合内存页中包括从所述目标虚拟内存页开始且连续的n个虚拟内存页,其中,n为正整数;
5、按所述复合内存页中所述n个虚拟内存页的顺序,分别建立所述n个虚拟内存页与n个连续的物理内存页之间的页面映射,基于所述页面映射访问所述目标虚拟内存页。
6、第二方面,本申请实施例提供一种内存管理装置,该装置包括:
7、对齐判断模块,用于若访问目标虚拟内存页时发生缺页异常,则判断所述目标虚拟内存页是否满足预设对齐条件,所述预设对齐条件根据预设大页内存空间设置;
8、大页合并模块,用于若满足,则确定虚拟地址空间中内存空间等于所述预设大页内存空间的复合内存页,所述复合内存页中包括从所述目标虚拟内存页开始且连续的n个虚拟内存页,其中,n为正整数;
9、映射建立模块,用于按所述复合内存页中所述n个虚拟内存页的顺序,分别建立所述n个虚拟内存页与n个连续的物理内存页之间的页面映射,基于所述页面映射访问所述目标虚拟内存页。
10、第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法的步骤。
11、第四方面,本申请实施例提供一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序适于由处理器加载并执行上述的方法的步骤。
12、本申请一些实施例提供的技术方案带来的有益效果至少包括:
13、本申请提供一种内存管理方法,发生缺页异常时,判断目标虚拟内存页是否满足预设对齐条件,预设对齐条件根据预设大页内存空间设置;若满足,确定虚拟地址空间中内存空间等于预设大页内存空间的复合内存页,复合内存页中包括从目标虚拟内存页开始且连续的n个虚拟内存页;按复合内存页中n个虚拟内存页的顺序,分别建立n个虚拟内存页与n个连续的物理内存页之间的页面映射。由于从满足预设对齐条件的目标虚拟内存页开始,将包括目标虚拟内存页在内并将目标虚拟内存页作为首页的连续n个虚拟内存页进行合并,得到了预设大页内存空间的大空间复合内存页,并一次性建立复合内存页中所有小页的映射,那么当后续访问符合内存页中的其他小页时,能够避免原本应该出现的缺页异常,减少对缺页异常的处理开销,更合理的内存空间分配也加快了操作系统的响应速度。
1.一种内存管理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述分别建立所述n个虚拟内存页与n个连续的物理内存页之间的页面映射之后,还包括:
3.根据权利要求1所述的方法,其特征在于,所述复合内存页应用于文件映射时,所述确定虚拟地址空间中内存空间等于所述预设大页内存空间的复合内存页之后,还包括:
4.根据权利要求1所述的方法,其特征在于,所述复合内存页应用于匿名映射时,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述预设大页内存空间为64kb内存空间;所述n等于16。
7.根据权利要求1所述的方法,其特征在于,所述判断所述目标虚拟内存页是否满足预设对齐条件之后,还包括:
8.一种内存管理装置,其特征在于,所述装置包括:
9.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1~7任意一项的所述方法的步骤。
10.一种终端,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1~7任一项所述方法的步骤。