[发明专利]一种用于减少内存开销的数据处理方法、装置及存储介质在审
申请号: | 202010595146.0 | 申请日: | 2020-06-24 |
公开(公告)号: | CN113835872A | 公开(公告)日: | 2021-12-24 |
发明(设计)人: | 慕伟虎 | 申请(专利权)人: | 北京小米移动软件有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F3/06;G06F16/174 |
代理公司: | 北京名华博信知识产权代理有限公司 11453 | 代理人: | 白莹 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 减少 内存 开销 数据处理 方法 装置 存储 介质 | ||
本公开涉及一种用于减少内存开销的数据处理方法、装置及存储介质,此方法包括:在数据压缩过程中,确定至少一原始数据块与压缩数据块的对应关系;根据所述至少一原始数据块的容量分配用于存储相应压缩数据块的内存空间;所述至少一原始数据块的容量与所述用于存储相应压缩数据块的内存空间的容量呈正比。本公开中,使用至少一原始数据块的容量与所述用于存储相应压缩数据块的内存空间的容量呈正比的内存空间分配方式,使分配的内存空间与原始数据块的容量相关,相比于现有技术中为各种不同容量的原始数据块分配相同内存空间的方式,节省内存空间,减少内存开销。
技术领域
本公开涉及移动终端数据处理技术,尤其涉及一种用于减少内存开销的数据处理方法、装置及存储介质。
背景技术
在数据压缩过程中,对于所述至少一原始数据块分配用于存储相应压缩数据块的内存空间时,分配固定容量的存储空间,从而造成内存空间的浪费。
发明内容
为克服相关技术中存在的问题,本公开提供一种用于减少内存开销的数据处理、装置及存储介质。
根据本文实施例的第一方面,提供了一种用于减少内存开销的数据处理方法,应用于电子设备,包括:
在数据压缩过程中,确定至少一原始数据块与压缩数据块的对应关系;
根据所述至少一原始数据块的容量分配用于存储相应压缩数据块的内存空间;所述至少一原始数据块的容量与所述用于存储相应压缩数据块的内存空间的容量呈正比。
在一实施方式中,所述方法还包括:确定所述至少一原始数据块的压缩类型,所述类型包括完全压缩类型和部分压缩类型,统计待处理数据段中包含的压缩类型相同的多个原始数据块;
为所述压缩类型相同的多个原始数据块同时分配缓存区间,在压缩完成后同时释放所述缓存空间。
在一实施方式中,所述方法还包括:
在模拟解压过程中,标记各压缩数据块是否具有就地解压标识;
在实际解压过程中,判断压缩数据块中是否携带就地解压标识,在携带就地解压标识时,使用虚拟文件系统分配的内存页用于存储解压数据,在未携带就地解压标识时,确定需申请的用于存储解压数据的内存空间的容量,在所述容量大于当前可用内存块中最大连续空闲空间容量时,申请新的内存空间用于存储解压数据。
在一实施方式中,所述方法还包括:
在压缩数据块的信息索引文件中记录所述压缩数据块对应的多个未压缩的原始数据块的标识;
在数据解压缩过程中,读取一压缩数据块到内存;根据所述压缩数据块的信息索引文件,确定所述压缩数据块对应的多个未压缩的原始数据块;
为每个原始数据块分配内存页;
将为所述原始数据块配置的内存页映射到连续地址的虚拟空间;
调用解压缩算法对所述虚拟空间中的数据进行解压缩。
在一实施方式中,根据所述压缩数据块的信息索引文件,确定所述压缩数据块对应的多个未压缩的原始数据块,包括:
根据所述压缩数据块的信息索引文件中原始数据块的类型信息和位置信息,确定所述压缩数据块对应的多个未压缩的原始数据块;
所述类型信息包括:起始数据块类型和非起始数据块类型;所述位置信息包括各个非起始数据块相比于起始数据块的位置指示信息。
根据本文实施例的第二方面,提供了一种用于减少内存开销的数据处理装置,应用于电子设备,包括:
第一确定模块,被配置为在数据压缩过程中,确定至少一原始数据块与压缩数据块的对应关系;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京小米移动软件有限公司,未经北京小米移动软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010595146.0/2.html,转载请声明来源钻瓜专利网。