[发明专利]内存管理方法、装置、存储介质及电子设备有效
| 申请号: | 201911260091.1 | 申请日: | 2019-12-10 | 
| 公开(公告)号: | CN111078406B | 公开(公告)日: | 2023-01-10 | 
| 发明(设计)人: | 彭冬炜 | 申请(专利权)人: | OPPO(重庆)智能科技有限公司 | 
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/445 | 
| 代理公司: | 深圳翼盛智成知识产权事务所(普通合伙) 44300 | 代理人: | 李汉亮 | 
| 地址: | 401120 重庆*** | 国省代码: | 重庆;50 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 内存 管理 方法 装置 存储 介质 电子设备 | ||
1.一种内存管理方法,其特征在于,包括:
当检测到基于应用程序触发的启动指令时,获取所述应用程序启动的目标内存需求量;
检测空闲内存空间的大小是否小于所述目标内存需求量;
当所述空闲内存空间的大小小于所述目标内存需求量时,根据所述目标内存需求量从已分配内存空间中确定出目标内存页;
在所述应用程序的启动过程中,基于多次内存分配请求进行内存分配,其中,在检测到基于所述应用程序触发的第一次内存分配请求时,应用程序基于第一次分配的内存启动,当前空闲内存空间的大小满足所述第一次内存分配请求;
在所述应用程序基于第一次分配的内存启动的同时,对所述目标内存页进行回收处理,以得到大小与所述目标内存需求量匹配的空闲内存空间,并在再次检测到基于所述应用程序触发的内存分配请求时,基于所述空闲内存空间响应所述内存分配请求。
2.根据权利要求1所述的内存管理方法,其特征在于,所述获取所述应用程序启动的目标内存需求量之前,还包括:
判断所述应用程序是否为首次启动;
若否,则执行所述获取所述应用程序启动的目标内存需求量;
若是,则启动所述应用程序,并记录所述应用程序的启动操作占用的内存量,作为所述目标内存需求量。
3.根据权利要求1所述的内存管理方法,其特征在于,所述对所述目标内存页进行回收处理,包括:
基于预设线程,对所述目标内存页进行回收处理。
4.根据权利要求3所述的内存管理方法,其特征在于,所述基于预设线程,对所述目标内存页进行回收处理之前,还包括:
当所述空闲内存空间的大小小于所述目标内存需求量时,为预设线程添加第一预设标识;
所述基于预设线程,对所述目标内存页进行回收处理,包括:
唤醒预设线程,使得所述预设线程基于所述第一预设标识对所述目标内存页进行回收处理。
5.根据权利要求4所述的内存管理方法,其特征在于,还包括:
检测空闲内存空间的大小是否小于预设阈值;
当所述空闲内存空间的大小小于预设阈值时,为预设线程添加第二预设标识;
唤醒所述预设线程,使得所述预设线程基于所述第二预设标识对已分配内存空间的数据进行压缩处理,得到大小不小于所述预设阈值的空闲内存空间。
6.根据权利要求1所述的内存管理方法,其特征在于,所述根据所述目标内存需求量从已分配内存空间中确定出目标内存页,包括:
若已分配内存空间中的干净内存页的数量小于所述目标内存需求量,则将所述干净内存页作为目标干净内存页,并从所述已分配内存空间的脏内存页中确定出目标脏内存页,将所述目标干净内存页和所述目标脏内存页作为目标内存页;
若已分配内存空间中的干净内存页的数量大于或等于所述目标内存需求量,则根据所述目标内存需求量从所述干净内存页中确定出目标内存页。
7.根据权利要求6所述的内存管理方法,其特征在于,所述根据所述目标内存需求量从所述干净内存页中确定出目标内存页,包括:
确定所述干净内存页中各内存页的最后访问时间;
按照最后访问时间从先到后的顺序,从所述干净内存页中获取大小等于所述目标内存需求量的内存页,作为目标内存页。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于OPPO(重庆)智能科技有限公司,未经OPPO(重庆)智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911260091.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:内存分配方法、装置、存储介质及电子设备
- 下一篇:一种高安全性电缆分支箱





