一种内存优化方法、终端和计算机可读存储介质技术

技术编号:24517360 阅读:42 留言:0更新日期:2020-06-17 06:42
本发明专利技术实施例公开了一种内存优化方法,该方法可以包括:根据终端系统内存中已使用的内存页列表中存储数据的使用顺序,将所述已使用的内存页列表中至少一个第一内存页存储的数据取出压缩存储在第二内存页;按照至少一个压缩存储的数据的使用顺序将存储所述至少一个压缩存储的数据的第二内存页排列生成压缩内存页列表;当所述压缩内存页列表中第二内存页的数量大于预设阈值时,将所述压缩内存页列表中的至少一个第二内存页存储的压缩数据取出存储在嵌入式多媒体卡。本发明专利技术实施例还公开了一种终端和计算机可读存储介质,可以提高内存压缩技术的效率,可以提供更多可用的内存空间,同时也不会由于过多的内存交换影响系统性能。

【技术实现步骤摘要】
一种内存优化方法、终端和计算机可读存储介质
本专利技术涉及电子
,尤其涉及一种内存优化方法、终端和计算机可读存储介质。
技术介绍
随着安卓Android智能终端愈来愈广泛的普及,愈来愈多的应用和游戏被适配到android智能系统中,但是功能日益强大的应用程序以及游戏也对android智能终端的硬件资源提出来更高的要求,比如更快的中央处理器(CPU,CentralProcessingUnit)和更大的内存容量等。内存容量的大小是影响智能终端性能的最关键的硬件因素之一,这在中低端android智能终端群中表现更为明显,随着应用程序和游戏对系统内存要求越来越高,终端系统中配置的内存大小,以及软件系统如何更合理的使用其相对紧缺的内存资源,会直接影响到终端用户的用户体验。内存压缩技术(ZRAM)是目前被广泛应用在android智能系统中的一种技术。Linux内核会将系统可用的内存分成固定大小(大小为4096字节)内存页,以内存页为最小单元将内存提供给系统中的应用程序使用。ZRAM原理如图1所示,是将系统中暂时不会使用到,但是又不能直接丢弃的内存页的数据进行压缩存储,在需要使用的时候,首先进行解压,然后再将其数据提供给系统使用;通过使用CPU进行压缩和解压的过程,达到节省内存空间的目的,以方便为系统提供更多可用的内存。但是,ZRAM存在的问题在于,其具体使用的效率取决于内存页中所包含的数据的压缩率,即内存压缩技术所能为提供的有效的可用内存空间为特定内存页压缩前后的数据大小的差值。当系统经过长期使用后,系统内存中所存储的数据的可压缩性会比较低,即压缩率比较低。在这种情况下,内存压缩技术所能为系统节省的内存空间就会比较有限,尤其对于硬件物理内存配置比较少,CPU处理能力比较低的中低端智能手机,内存压缩技术ZRAM的作用和效率相对会比较有限。
技术实现思路
为解决现有存在的技术问题,本专利技术实施例提供一种内存优化方法、终端和计算机可读存储介质,可以提高内存压缩技术的效率,可以提供更多可用的内存空间,同时也不会由于过多的内存交换影响系统性能。为达到上述目的,本专利技术实施例的技术方案是这样实现的:一种内存优化方法,包括:根据终端系统内存中已使用的内存页列表中存储数据的使用顺序,将所述已使用的内存页列表中至少一个第一内存页存储的数据取出压缩存储在第二内存页;按照至少一个压缩存储的数据的使用顺序将存储所述至少一个压缩存储的数据的第二内存页排列生成压缩内存页列表;当所述压缩内存页列表中第二内存页的数量大于预设阈值时,将所述压缩内存页列表中的至少一个第二内存页存储的压缩数据取出存储在嵌入式多媒体卡。一种终端,包括:处理单元,用于根据终端系统内存中已使用的内存页列表中存储数据的使用顺序,将所述已使用的内存页列表中至少一个第一内存页存储的数据取出压缩存储在第二内存页;生成单元,用于按照至少一个压缩存储的数据的使用顺序将存储所述至少一个压缩存储的数据的第二内存页排列生成压缩内存页列表;所述处理单元,还用于当所述压缩内存页列表中第二内存页的数量大于预设阈值时,将所述压缩内存页列表中的至少一个第二内存页存储的压缩数据取出存储在嵌入式多媒体卡。一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述内存优化方法的步骤。本专利技术实施例所提供的内存优化方法、终端和计算机可读存储介质,根据终端系统内存中已使用的内存页列表中存储数据的使用顺序,将所述已使用的内存页列表中至少一个第一内存页存储的数据取出压缩存储在第二内存页;按照至少一个压缩存储的数据的使用顺序将存储所述至少一个压缩存储的数据的第二内存页排列生成压缩内存页列表;当所述压缩内存页列表中第二内存页的数量大于预设阈值时,将所述压缩内存页列表中的至少一个第二内存页存储的压缩数据取出存储在嵌入式多媒体卡。本专利技术实施例提供的内存优化方法、终端和计算机可读存储介质,可以使用终端系统的永久存储介质嵌入式多媒体卡作为内存压缩技术二级缓存,将经过内存压缩技术压缩后的数据选择性的存储到嵌入式多媒体卡,这样可以提高内存压缩的效率,提供了更多可用的内存空间,同时也不会由于过多的内存交换影响系统性能和嵌入式多媒体卡的使用寿命。附图说明在附图(其不一定是按比例绘制的)中,相似的附图标记可在不同的视图中描述相似的部件。具有不同字母后缀的相似附图标记可表示相似部件的不同示例。附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。图1为本专利技术实施例提供的内存压缩技术原理示意图;图2为本专利技术实施例提供的内存交换技术原理示意图;图3为本专利技术实施例提供的内存优化方法流程示意图;图4为本专利技术实施例提供的内存中数据压缩存储示例图;图5为本专利技术实施例提供的将内存中压缩数据存储到嵌入式多媒体卡示例图;图6为本专利技术实施例提供的从嵌入式多媒体卡读取解压数据示例图;图7为本专利技术实施例提供的终端结构示意图一;图8为本专利技术实施例提供的终端结构示意图二。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述。需要说明的是,本专利技术的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。内存交换技术是Linux系统中广泛使用的一种技术,其原理如图2所示,是将运行系统中暂时不用但又不能直接丢弃的内存页的数据交换存储到系统的永久存储介质中,比如硬盘中,从而将该内存页节省出来供系统的其他应用使用;当系统需要使用已经被交换存储到硬盘中的内存数据时会先从硬盘中将数据读入到内存中,然后再进行使用。内存交换技术的缺点主要包括两方面,一方面,先是智能手机使用嵌入式多媒体卡(eMMC,EmbeddedMultiMediaCard)作为其永久存储介质中,eMMC具有相对硬盘来说比较短的写寿命周期,也就是说如果将内存交换技术直接使用在android智能手机中,会比较严重的影响到手机的使用寿命;另一方面,相对电脑的硬盘,eMMC的读写速度比较慢,较慢写速度意味着系统在进行内存页交换的时候需要等待更长的时间,这样会比较严重的影响系统的性能和用户体验。由于内存交换技术本身的缺点导致了在实际应用中其还没有使用在运行android系统的智能手机移动设备中。本专利技术实施例提供的内存优化方法,将ZRAM中的压缩后的数据进行使用顺序排序,仅将一定比例的使用频率比较低的数据存储到eMMC中;而且存储到eMMC的数据是经过压缩后的,所以相对传统的内存交换技术,对eMMC的读写操作会显著的下降,从而减少对系统性能和eMMC寿命的影响。本专利技术实施例提供的一种内存优化方法,如图3所示,该方法可以包括:步骤101、根据终端系统内存中已使用的内存页列表中存储数据的使用顺序,将所述已使用的内存页列表中至少一个第一内存页存储的数本文档来自技高网
...

【技术保护点】
1.一种内存优化方法,其特征在于,包括:/n根据终端系统内存中已使用的内存页列表中存储数据的使用顺序,将所述已使用的内存页列表中至少一个第一内存页存储的数据取出压缩存储在第二内存页;/n按照至少一个压缩存储的数据的使用顺序将存储所述至少一个压缩存储的数据的第二内存页排列生成压缩内存页列表;/n当所述压缩内存页列表中第二内存页的数量大于预设阈值时,将所述压缩内存页列表中的至少一个第二内存页存储的压缩数据取出存储在嵌入式多媒体卡。/n

【技术特征摘要】
1.一种内存优化方法,其特征在于,包括:
根据终端系统内存中已使用的内存页列表中存储数据的使用顺序,将所述已使用的内存页列表中至少一个第一内存页存储的数据取出压缩存储在第二内存页;
按照至少一个压缩存储的数据的使用顺序将存储所述至少一个压缩存储的数据的第二内存页排列生成压缩内存页列表;
当所述压缩内存页列表中第二内存页的数量大于预设阈值时,将所述压缩内存页列表中的至少一个第二内存页存储的压缩数据取出存储在嵌入式多媒体卡。


2.根据权利要求1所述的方法,其特征在于,在所述将所述已使用的内存页列表中至少一个第一内存页存储的数据取出压缩存储在第二内存页之前,包括:
获取运行程序要使用的存储容量值,当终端系统内存的可使用存储容量值小于所述运行程序要使用的存储容量值时,确定所述运行程序要使用的存储容量值与所述终端系统内存的可使用存储容量值的差值为待压缩的存储容量值;
其中,所述至少一个第一内存页存储的数据压缩前占用的存储容量值与所述至少一个第一内存页存储的数据压缩后占用的存储容量值的差值大于或等于所述待压缩的存储容量值。


3.根据权利要求1所述的方法,其特征在于,
所述已使用的内存页列表包括:至少一个第一内存页,所述至少一个第一内存页按照存储在所述至少一个第一内存页的数据的使用时间顺序排列,使用时间晚的数据存储的第一内存页排在使用时间早的数据存储的第一内存页前面;
所述将所述已使用的内存页列表中至少一个第一内存页存储的数据取出压缩存储在第二内存页,包括:
将所述已使用的内存页列表中排在最后面的至少一个第一内存页存储的数据取出压缩存储在第二内存页。


4.根据权利要求1所述的方法,其特征在于,
所述压缩内存页列表中包括:至少一个第二内存页,所述至少一个第二内存页按照存储在所述至少一个第二内存页的压缩数据的使用时间顺序排列,使用时间晚的压缩数据存储的第二内存页排在使用时间早的压缩数据存储的第二内存页前面;
所述将所述压缩内存页列表中的至少一个第二内存页存储的压缩数据取出存储在嵌入式多媒体卡,包括:
将所述压缩内存页列表中排在最...

【专利技术属性】
技术研发人员:宋沈阳
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1