[发明专利]内存分配方法、装置、存储介质及电子设备在审
申请号: | 202010627322.4 | 申请日: | 2020-07-01 |
公开(公告)号: | CN111831435A | 公开(公告)日: | 2020-10-27 |
发明(设计)人: | 周华材;张诗明;郭健 | 申请(专利权)人: | OPPO广东移动通信有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 深圳翼盛智成知识产权事务所(普通合伙) 44300 | 代理人: | 李汉亮 |
地址: | 523860 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 分配 方法 装置 存储 介质 电子设备 | ||
1.一种内存分配方法,其特征在于,包括:
检测预设内存池中的空闲内存量是否小于预设阈值,其中,从系统内存空间中划分出部分内存空间构成预设内存池;
当检测到所述空闲内存量小于所述预设阈值时,基于所述系统内存空间的空闲内存空间,对所述预设内存池进行补充,以使所述预设内存池的空闲内存量不小于所述预设阈值;
当接收到线程发送的内存分配请求时,判断所述线程是否为第一类线程,其中,所述第一类线程为执行用户交互事件中相关任务的线程;
若所述线程为第一类线程,则从所述预设内存池中为所述线程分配内存;
若所述线程不为第一类线程,则从系统内存空间中除所述预设内存池之外的剩余内存空间中为所述线程分配内存。
2.如权利要求1所述的内存分配方法,其特征在于,判断所述线程是否为第一类线程,包括:
判断所述线程是否具有第一预设标签,其中,若所述线程具有第一预设标签,则判定所述线程为第一类线程,若所述线程不具有第一预设标签,则判定所述线程不为第一类线程。
3.如权利要求2所述的内存分配方法,其特征在于,所述方法还包括:
确定出用于执行交互事件中相关任务的目标线程;
为所述目标线程添加所述第一预设标签,以将所述目标线程标记为第一类线程。
4.如权利要求1所述的内存分配方法,其特征在于,所述方法还包括:
当检测到系统启动时,从系统内存空间中确定出容量等于所述预设阈值的第一目标内存空间;
为所述第一目标内存空间中的内存页添加第二预设标签,以由具有所述第二预设标签的内存页构成所述预设内存池。
5.如权利要求4所述的内存分配方法,其特征在于,所述基于所述系统内存空间的空闲内存空间,对所述预设内存池进行补充,以使所述预设内存池的空闲内存量不小于所述预设阈值,包括:
根据所述空闲内存量和所述预设阈值确定目标内存量;
从所述系统内存空间中不具有所述第二预设标签的空闲内存空间中,确定除容量等于所述目标内存量的第二目标内存空间;
为所述第二目标内存空间中的内存页添加所述第二预设标签,以使所述预设内存池的空闲内存量不小于所述预设阈值。
6.如权利要求4所述的内存分配方法,其特征在于,所述检测预设内存池中的空闲内存量是否小于预设阈值之后,还包括:
若所述空闲内存量不小于所述预设阈值,则计算所述空闲内存量与所述预设阈值之间的差值;
若所述差值大于预设差值,则删除所述预设内存池中部分内存页的第二预设标签,以使所述预设内存池的空闲内存量等于所述预设阈值。
7.如权利要求1至6任一项所述的内存分配方法,其特征在于,所述若所述线程为第一类线程,则从所述预设内存池中为所述线程分配内存,包括:
若所述线程为第一类线程,则根据所述内存分配请求确定内存需求量;
若所述预设内存池中空闲内存量不小于所述内存需求量,则从所述预设内存池中确定出容量与所述内存需求量匹配的目标内存页,将所述目标内存页分配给所述线程。
8.如权利要求7所述的内存分配方法,其特征在于,所述根据所述内存分配请求确定内存需求量之后,还包括:
若所述预设内存池中空闲内存量小于所述内存需求量,则从系统内存空间中除所述预设内存池之外的剩余内存空间中为所述线程分配内存。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于OPPO广东移动通信有限公司,未经OPPO广东移动通信有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010627322.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:线程调度方法、装置、存储介质及电子设备
- 下一篇:一种纸张挂载方法