一种基于异步去重和重压缩的交换内存优化方法

专利2026-05-07  23


本申请涉及计算机,更具体地,涉及一种基于异步去重和重压缩的交换内存优化方法。


背景技术:

1、随着移动设备的普及,人们对移动平台上应用数量和功能的需求不断增长。特别是在多应用同时运行的情况下,移动系统面临着不同应用之间对内存资源的争夺与管理挑战,需要实现高效的内存分配与回收。尽管可以通过增加物理内存来改善内存管理,但由于成本和可扩展性等问题,这并非长期解决方案。因此,为了最大程度地充分利用有限的内存资源以满足各种应用的功能需求,目前的研究侧重于在不引入额外空间开销的前提下,优化现有的内存管理方案,减少不必要的内存浪费,以提高整体系统性能。

2、为了更高效的使用内存,linux社区的开发者与各大移动设备厂商都提出了许多有用的特性与功能组件来缓解内存不足的问题。在用户空间层面,软件开发人员实现了内存效益最大化的应用设计;在系统内核层中,系统开发者则需要有效组织内存空间,并针对上层的资源需求进行合理的分配与释放。面对以上问题的挑战,压缩内存交换技术应运而生,即zram技术,成为一项应对有限内存资源和多应用需求的关键创新技术。压缩内存交换技术通过对即将被交换到辅助存储器的内存数据进行压缩,减小数据体积,然后将压缩后的数据交换到辅助存储器。当需要重新加载数据时,进行解压缩操作,将数据还原到内存中。

3、然而使用linux中的trace跟踪工具对zram空间中的页面行为深入分析后,观察到在移入zram空间的页面中存在相当比例的重复页面。针对页面被送入zram空间时出现的页面重复情况,一些研究和解决方法专注于实时去重技术,以优化zram空间的利用。通过进一步的研究发现zram空间中页面的停留情况时,观察到只有10%~20%左右的压缩页面被换回到内存中重新使用。这意味着大量的冷页面存在于zram空间,而这些冷页面未被频繁使用,却占据了宝贵的内存资源。因此,如何解决上述问题,提高zram空间利用率,成为当下研究的一个技术难题。


技术实现思路

1、因此,本研究针对以上问题,专注于移动设备中资源受限的情况,旨在提出一种良好的内存优化方法以改善zram空间的性能和内存利用率。通过针对这些挑战提出创新性的优化策略,研究旨在提高zram在移动设备上的效能,减少冷页面的存在,并优化内存资源的分配,从而更好地适应移动设备的特殊需求。

2、为了实现上述目的,本发明构建了一种在移动设备资源受限情况下的内存空间扩展优化方法。

3、所述内存空间扩展优化方法将修改zram空间管理机构,使其支持zram到flash的页面迁移,同时也将设计zram空间中异步去重机制和页面重压缩机制。

4、本申请提供了一种创新的内存空间扩展优化方法,特别适用于移动设备等资源受限情况,所述方法包括:

5、修改zram(压缩内存)空间管理机制的改进,实现了对flash和zram之间的页面迁移的支持,从而提高了内存利用效率。同时为了更有效地管理zram空间,引入了对页面信息的详细记录。这些记录包括每个页面的唯一标识、压缩大小、引用以及引用计数。这一举措使得系统能够更智能地处理不同页面的压缩和迁移需求。

6、在页面换入zram空间的过程中,采用较快的压缩算法,以确保在资源受限的环境下高效、快速地压缩换入页面。同时,为了定期优化zram空间的利用,引入了独立线程,定期扫描并压缩已存入zram空间的页面。

7、为了更进一步提高内存利用效率,引入了页面的冷热判断机制。超过所设定阈值1的页面被认定为冷页面,并定期迁移到flash空间。在扫描过程中,对于阈值1和阈值2之间的页面,执行重压缩操作和页面共享机制判断。对于超过阈值2但小于阈值1的页面,系统寻找具有多个page_crc的重复页面,进行解压缩和内容比对操作,实现页面共享并相应增加共享页面计数。而对于其他页面在该区间内,则采用更优化的压缩算法进行重压缩,以最大程度地优化zram空间的使用效果。



技术特征:

1.一种在移动设备资源受限情况下的内存空间扩展优化框架,其特征在于,所述框架包括:

2.根据权利要求1所述方法,其特征在于,所述管理机制将对进入zram空间中的冷页面迁移至flash,包括:

3.根据权利要求1所述方法,其特征在于,所述页面共享机制将对进入zram空间中的重复页面进行异步去重操作,包括:

4.根据权利要求1所述方法,其特征在于,所述重压缩操作会对进入zram空间中的页面使用压缩效果更好的算法进行重压缩,包括:


技术总结
本申请提供一种基于异步去重和重压缩的交换内存优化方法,涉及计算机技术领域,解决了由于手机设备内存资源有限,且用户开启的应用较多的情况下,内存中换出到ZRAM空间的数据逐渐增多,不断送入ZRAM空间中的压缩数据会占用大量的存储空间,导致剩余的存储空间仍较少的问题。该方法包括:在ZRAM空间中启动一个独立线程进行扫描,对于超过页面停留时间超过阈值1的页面,将其送入FLASH;对于超过阈值2但小于阈值1的页面,寻找具有多个page_crc的重复页面,对其进行解压缩和比对页面内容,实现页面共享机制判断;其他页面在该区间内将使用压缩性能更好的算法执行重压缩操作。

技术研发人员:熊浩宇,孙韬宁,龙家璇,杜小华,曹学贵
受保护的技术使用者:重庆大学
技术研发日:
技术公布日:2024/6/26
转载请注明原文地址:https://doc.8miu.com/read-1829156.html

最新回复(0)