一种内存管理方法、装置、设备及介质制造方法及图纸

技术编号:20819655 阅读:30 留言:0更新日期:2019-04-10 05:51
本申请公开了一种内存管理方法、装置、设备及介质,包括:对内存中满足预设条件的第一类内存页进行标记,得到相应的标记信息;当发生掉电时,则利用备用电源,将与所述标记信息对应的所述第一类内存页刷写至系统盘中。可见,本申请在系统发生掉电时,并不是直接将内存中的全部内存页刷写到系统盘中,而是对掉电之前标记过的第一类内存页进行刷写,这样可以使得本申请能够利用备用电源提供的电能,专注于将满足预设条件的内存页刷写到系统盘中,而无需花费宝贵的时间去刷写那些不满足预设条件的内存页,从而有效降低了内存中重要数据发生丢失的概率。

【技术实现步骤摘要】
一种内存管理方法、装置、设备及介质
本申请涉及内存
,特别涉及一种内存管理方法、装置、设备及介质。
技术介绍
目前,在存储系统中,由于内存的访问速度高于磁盘的访问速度,为了提升系统的访问速度以降低访问时延,一些经常访问的数据往往被放到内存中进行访问。不过,由于内存是一种易失性的存储介质,在系统发生掉电时,内存中的数据会丢失。当前,为了防止内存中的数据发生丢失,通常是在系统掉电时,通过BBU(即BatteryBackupUnit)或UPS(即UninterruptiblePowerSystem/UninterruptiblePowerSupply)进行短暂供电,并在上述短暂供电期间,把内存中的数据写入到系统盘中,以避免数据发生丢失。然而,由于备用电源所能提供的供电时间是有限的,当内存中的数据非常多时,备用电源中存储的电能无法支持将内存中的全部数据均写入系统盘中,从而导致内存中一些重要数据发生丢失。由此可见,在系统发生掉电时,如何降低内存中重要数据发生丢失的概率是目前有待进一步解决的问题。
技术实现思路
有鉴于此,本申请的目的在于提供一种内存管理方法、装置、设备及介质,能够有效降低内存中重要数据发生丢失的概率。其具体方案如下:第一方面,本申请公开了一种内存管理方法,包括:对内存中满足预设条件的第一类内存页进行标记,得到相应的标记信息;当发生掉电时,则利用备用电源,将与所述标记信息对应的所述第一类内存页刷写至系统盘中。可选的,所述对内存中满足预设条件的第一类内存页进行标记,得到相应的标记信息,包括:生成标记请求;对内存中与所述标记请求对应的第一类内存页进行标记,得到相应的标记信息。可选的,所述生成标记请求,包括:对内存进行监视;若监视到内存中的任意第一类内存页中的数据发生变更,则针对所述任意第一类内存页生成相应的标记请求。可选的,所述生成标记请求,包括:对内存进行监视;若监视到内存中的任意第一类内存页的访问频率大于预设频率阈值,则针对所述任意第一类内存页生成相应的标记请求。可选的,所述对内存中满足预设条件的第一类内存页进行标记的过程中,还包括:将所述标记信息保存至位于所述内存的第二类内存页中。可选的,所述内存管理方法,还包括:在利用所述内存保存数据之前,从所述内存中划分出所述第一类内存页和所述第二类内存页。可选的,所述将与所述标记信息对应的所述第一类内存页刷写至系统盘中,包括:对所述第二类内存页进行遍历,以确定出所述第二类内存页中保存的所有标记信息所对应的所有第一类内存页;将与所述所有第一类内存页中的数据、页号以及内存页总数量刷写至系统盘中。可选的,所述内存管理方法,还包括:当上电恢复时,则根据所述系统盘中保存的页号,将所述系统盘中保存的所述第一类内存页的数据写入所述内存的相应内存页中,并利用所述系统盘中保存的所述内存页总数量校验数据是否保持一致。第二方面,本申请公开了一种内存管理装置,包括:内存页标记模块,用于对内存中满足预设条件的第一类内存页进行标记,得到相应的标记信息;信息刷写模块,用于当发生掉电时,则利用备用电源,将与所述标记信息对应的所述第一类内存页刷写至系统盘中。第三方面,本申请公开了一种内存管理设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序,以实现前述公开的内存管理方法。第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的内存管理方法。可见,本申请在发生掉电之前,先对内存中满足预设条件的第一类内存页进行标记,然后在发生掉电时,利用备用电源将上述经过标记的第一类内存页刷写到系统盘中,也即,本申请在系统发生掉电时,并不是直接将内存中的全部内存页刷写到系统盘中,而是对掉电之前标记过的第一类内存页进行刷写,这样可以使得本申请能够利用备用电源提供的电能,专注于将满足预设条件的内存页刷写到系统盘中,而无需花费宝贵的时间去刷写那些不满足预设条件的内存页,从而有效降低了内存中重要数据发生丢失的概率。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请公开的一种内存管理方法流程图;图2为本申请公开的刷写到系统盘的文件结构示意图;图3为本申请公开的一种具体的内存管理方法流程图;图4为本申请公开的一种具体的内存管理方法流程图;图5为本申请公开的一种具体的内存管理装置结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。参见图1所示,本申请实施例公开了一种内存管理方法,包括:步骤S11:对内存中满足预设条件的第一类内存页进行标记,得到相应的标记信息。本实施例中,所述对内存中满足预设条件的第一类内存页进行标记,得到相应的标记信息,具体可以包括:生成标记请求,然后对内存中与所述标记请求对应的第一类内存页进行标记,得到相应的标记信息。其中,上述标记请求的生成过程可以根据实际需要进行设置。可以理解的是,本实施例可以将上述得到的标记信息保存在内存中,具体的,本实施例中,所述对内存中满足预设条件的第一类内存页进行标记的过程中,还可以包括:将所述标记信息保存至位于所述内存的第二类内存页中。进一步的,所述内存管理方法,还可以包括:在利用所述内存保存数据之前,从所述内存中划分出所述第一类内存页和所述第二类内存页。也即,在内存开始保存数据之前,可以先从内存中划分出上述第一类内存页和第二类内存页,其中,第一类内存页用于保存外界需要访问的内存数据,第二类内存页则是用于保存对上述第一类内存页进行标记后得到的标记信息。具体的,在本实施例中,可以先根据系统安装的内存规格,定义内存管理模块管理的内存资源数量。例如,若系统安装64GB内存,则可以定义内存管理模块管理60GB内存资源,其他用于系统运行;若系统安装128GB内存,则可以定义内存管理模块管理120GB内存资源,其他用于系统运行。根据内存管理模块定义的内存资源数量,内存管理模块按照默认的内存页4KB为粒度进行内存资源的管理。如定义管理60GB内存,那么管理的内存页数量为60*1024*1024/4=15728640个内存页。接下来,以管理60GB内存为例进行描述。在系统初始化时,可以调用glibc提供的申请内存接口,申请相应数量的内存页,并对这个内存页进行编号:0,1,…,15728639,并且把这些内存页的编号跟逻辑地址的应用管理保存起来,保存的数据结构占用16个字节的存储空间,具体如下:本实施例中,可以把用于描述内存页信息的数据如上述标记信息等保存在0号页开始的内存页中,如管理15728640内存页,需要15728640*16/4K个=61440个内存页,所以编号为0—61439的内存页用于保存内存页的描述信息,把这些保存的内存页的描述信息称之本文档来自技高网...

【技术保护点】
1.一种内存管理方法,其特征在于,包括:对内存中满足预设条件的第一类内存页进行标记,得到相应的标记信息;当发生掉电时,则利用备用电源,将与所述标记信息对应的所述第一类内存页刷写至系统盘中。

【技术特征摘要】
1.一种内存管理方法,其特征在于,包括:对内存中满足预设条件的第一类内存页进行标记,得到相应的标记信息;当发生掉电时,则利用备用电源,将与所述标记信息对应的所述第一类内存页刷写至系统盘中。2.根据权利要求1所述的内存管理方法,其特征在于,所述对内存中满足预设条件的第一类内存页进行标记,得到相应的标记信息,包括:生成标记请求;对内存中与所述标记请求对应的第一类内存页进行标记,得到相应的标记信息。3.根据权利要求2所述的内存管理方法,其特征在于,所述生成标记请求,包括:对内存进行监视;若监视到内存中的任意第一类内存页中的数据发生变更,则针对所述任意第一类内存页生成相应的标记请求。4.根据权利要求2所述的内存管理方法,其特征在于,所述生成标记请求,包括:对内存进行监视;若监视到内存中的任意第一类内存页的访问频率大于预设频率阈值,则针对所述任意第一类内存页生成相应的标记请求。5.根据权利要求1至4任一项所述的内存管理方法,其特征在于,所述对内存中满足预设条件的第一类内存页进行标记的过程中,还包括:将所述标记信息保存至位于所述内存的第二类内存页中。6.根据权利要求5所述的内存管理方法,其特征在于,还包括:在利用所述内存保存数据之前,从所述内存中划分出所述第...

【专利技术属性】
技术研发人员:王永刚
申请(专利权)人:浪潮北京电子信息产业有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1