[发明专利]内存分配方法、装置、存储介质及电子设备有效
申请号: | 201911260088.X | 申请日: | 2019-12-10 |
公开(公告)号: | CN111078405B | 公开(公告)日: | 2022-07-15 |
发明(设计)人: | 周华材 | 申请(专利权)人: | OPPO(重庆)智能科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 深圳翼盛智成知识产权事务所(普通合伙) 44300 | 代理人: | 李汉亮 |
地址: | 401120 重庆*** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 分配 方法 装置 存储 介质 电子设备 | ||
1.一种内存分配方法,其特征在于,包括:
每间隔预设时长,统计过去的预设时长内接收到的内存分配请求的历史请求次数,并确定每一次历史内存分配请求对应的历史内存请求量;
根据所述历史请求次数,以及每一次历史内存分配请求对应的历史内存请求量,确定出预期内存请求量和预期请求次数,其中,将一次或者多次历史内存分配请求对应的历史内存请求量中的最大历史内存请求量作为所述预期内存请求量,将所述历史请求次数作为所述预期请求次数;
进行内存碎片整理,以得到内存量不小于所述预期内存请求量的连续内存空间,其中,所述连续内存空间的个数与所述预期请求次数匹配;
当接收到内存分配请求时,基于所述连续内存空间进行内存分配。
2.如权利要求1所述的内存分配方法,其特征在于,所述统计过去的预设时长内接收到的内存分配请求的历史请求次数,并确定每一次历史内存分配请求对应的历史内存请求量之后,还包括:
判断所述历史内存请求量是否小于预设阈值;
若否,则执行根据所述历史请求次数,以及每一次历史内存分配请求对应的历史内存请求量,确定出预期内存请求量和预期请求次数。
3.如权利要求1所述的内存分配方法,其特征在于,所述根据所述历史请求次数,以及每一次历史内存分配请求对应的历史内存请求量,确定出预期内存请求量和预期请求次数之前,还包括:
当所述历史请求次数大于1时,检测多个所述历史内存请求量中是否小于预设阈值的历史内存请求量;
若是,则删除所述多个所述历史内存请求量中小于所述预设阈值的历史内存请求量,并根据小于所述预设阈值的历史内存请求量的个数修改所述历史请求次数;
并基于删除操作后的剩余的历史内存请求量和修改操作后的历史请求次数,执行所述根据所述历史请求次数,以及每一次历史内存分配请求对应的历史内存请求量,确定出预期内存请求量和预期请求次数。
4.如权利要求1所述的内存分配方法,其特征在于,所述进行内存碎片整理,以得到内存量不小于所述预期内存请求量的连续内存空间,包括:
唤醒内存回收线程以进行内存回收和内存碎片整理,以得到内存量不小于所述预期内存请求量的连续内存空间。
5.如权利要求1至4任一项所述的内存分配方法,其特征在于,所述每间隔预设时长,统计过去的预设时长内接收到的内存分配请求的历史请求次数,并确定每一次历史内存分配请求对应的历史内存请求量之前,还包括:
判断当前前台运行的应用程序是否为预设应用程序;
若是,则执行所述每间隔预设时长,统计过去的预设时长内接收到的内存分配请求的历史请求次数,并确定每一次历史内存分配请求对应的历史内存请求量。
6.如权利要求1至4任一项所述的内存分配方法,其特征在于,所述每间隔预设时长,统计过去的预设时长内接收到的内存分配请求的历史请求次数,并确定每一次历史内存分配请求对应的历史内存请求量,包括:
每间隔预设时长,统计过去的预设时长内接收到目标进程发送的内存分配请求的历史请求次数,并确定每一次历史内存分配请求对应的历史内存请求量;
所述进行内存碎片整理,包括:
对所述目标进程对应的内存空间进行内存碎片整理;
所述当接收到内存分配请求时,基于所述连续内存空间进行内存分配,包括:
当接收到所述目标进程发送的内存分配请求时,基于所述连续内存空间进行内存分配。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于OPPO(重庆)智能科技有限公司,未经OPPO(重庆)智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911260088.X/1.html,转载请声明来源钻瓜专利网。