[发明专利]内存回收方法及设备在审
申请号: | 202111395891.1 | 申请日: | 2021-11-23 |
公开(公告)号: | CN114090465A | 公开(公告)日: | 2022-02-25 |
发明(设计)人: | 韩玉明;马晓松 | 申请(专利权)人: | 北京紫光展锐通信技术有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F9/50 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 李兴福;黄健 |
地址: | 100083 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 回收 方法 设备 | ||
1.一种内存回收方法,其特征在于,所述方法包括:
监测电子设备是否需要杀死目标进程,所述目标进程为所述电子设备中内存不足调整参数oom_adj为0的进程;
当监测到电子设备需要杀死至少两个目标进程时,确定所述电子设备当前的空闲内存与空闲缓存;
若所述空闲内存与所述空闲缓存中的任意一项大于或等于第一预设阈值,且所述空闲内存与所述空闲缓存均小于第二预设阈值,则杀死所述至少两个目标进程中最早启动的目标进程;其中,所述第一预设阈值小于所述第二预设阈值,所述第二预设阈值为所述电子设备需要杀死所述目标进程时对应的最小空闲内存;
若所述空闲内存与所述空闲缓存均小于所述第一预设阈值,则杀死所述至少两个目标进程。
2.根据权利要求1所述的方法,其特征在于,所述确定所述电子设备当前的空闲内存与空闲缓存之后,还包括:
若所述空闲内存与所述空闲缓存中的任意一项大于或等于所述第二预设阈值,且所述空闲内存与所述空闲缓存均小于第三预设阈值,则确定所述电子设备当前是否运行有oom_adj值大于第一预设值的第一进程;其中,所述第一预设值不小于0,所述第三预设阈值为所述电子设备需要杀死所述第一进程时对应的最小空闲内存;
在所述电子设备当前运行有所述第一进程时,杀死所述第一进程;
在所述电子设备当前未运行有所述第一进程时,根据预设判断条件,确定是否杀死所述至少两个目标进程中最早启动的目标进程。
3.根据权利要求2所述的方法,其特征在于,所述根据预设判断条件,确定是否杀死所述至少两个目标进程中最早启动的目标进程,包括:
确定所述电子设备生成的压力阻塞信息PSI中是否存在临界critical事件,以及所述电子设备中交换SWAP分区的使用量;
当所述电子设备生成的PSI中存在critical事件,且所述SWAP分区的使用量大于预设使用量阈值时,杀死所述至少两个目标进程中最早启动的目标进程。
4.根据权利要求2所述的方法,其特征在于,所述确定所述电子设备当前的空闲内存与空闲缓存之后,还包括:
若所述空闲内存与所述空闲缓存中的任意一项大于或等于所述第三预设阈值,则杀死所述电子设备当前运行的oom_adj值大于第二预设值的第二进程;其中,所述第二预设值大于所述第一预设值。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述监测电子设备是否需要杀死目标进程,包括:
当监测到以下检测项中的至少一项满足时,确定所述电子设备需要杀死目标进程:
所述电子设备中SWAP分区的使用量大于预设使用量阈值;
所述电子设备当前的页颠簸程度大于预设页颠簸程度阈值;
所述电子设备生成的PSI中存在critical事件;
所述电子设备中当前的空闲内存小于预设内存水线值。
6.一种内存回收装置,其特征在于,所述装置包括:
监测模块,用于监测电子设备是否需要杀死目标进程,所述目标进程为所述电子设备中内存不足调整参数oom_adj为0的进程;
处理模块,用于当监测到电子设备需要杀死至少两个目标进程时,确定所述电子设备当前的空闲内存与空闲缓存;
所述处理模块,还用于若所述空闲内存与所述空闲缓存中的任意一项大于或等于第一预设阈值,且所述空闲内存与所述空闲缓存均小于第二预设阈值,则杀死所述至少两个目标进程中最早启动的目标进程;其中,所述第一预设阈值小于所述第二预设阈值,所述第二预设阈值为所述电子设备需要杀死所述目标进程时对应的最小空闲内存;
所述处理模块,还用于若所述空闲内存与所述空闲缓存均小于所述第一预设阈值,则杀死所述至少两个目标进程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京紫光展锐通信技术有限公司,未经北京紫光展锐通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111395891.1/1.html,转载请声明来源钻瓜专利网。