[发明专利]电子设备及其内存回收方法、介质有效
申请号: | 202210185733.1 | 申请日: | 2022-02-28 |
公开(公告)号: | CN114253872B | 公开(公告)日: | 2022-07-12 |
发明(设计)人: | 杨需哲;伊鹏翔;袁晓峰 | 申请(专利权)人: | 荣耀终端有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F9/50 |
代理公司: | 上海音科专利商标代理有限公司 31267 | 代理人: | 贾玉 |
地址: | 518040 广东省深圳市福田区香蜜湖街道*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 电子设备 及其 内存 回收 方法 介质 | ||
本申请涉及计算机系统领域,具体涉及一种电子设备及其内存回收方法、介质,该内存回收方法包括:接收第一类内存回收指令;响应于第一类内存回收指令,根据第一执行顺序执行多个内存回收子程序进行内存回收;根据各内存回收子程序的执行时间和回收到的内存大小,确定各内存回收子程序的内存回收能力;根据各内存回收子程序的内存回收能力,将多个内存回收子程序的执行顺序从第一执行顺序调整为第二执行顺序。本申请提供的方法,可以根据内存回收子程序的内存回收能力调整内存回收子程序的排列顺序,实现智能调整控制链表中的内存回收子程序的排列顺序,可以优先执行内存回收能力较好的内存回收子程序。
技术领域
本申请涉及计算机系统领域。尤其涉及一种电子设备及其内存回收方法、介质。
背景技术
现有电子设备的操作系统(如:Linux系统)可以通过slab(内存管理单元)来管理电子设备的内存,并在控制链表中保存与内存管理单元对应的内存回收单元(如:Linux系统中的shrinker)。在操作系统需要执行内存回收的操作时,操作系统会根据控制链表中内存回收单元的排列顺序,依次从控制链表的起始位置起执行内存回收单元来回收对应的内存管理单元。
但是,如果控制链表中靠前的位置存在大量回收能力以及回收效率低下的内存回收单元,则会使得操作系统的内核无法及时回收内存,造成操作系统卡顿影响用户体验。因此,需要一种根据内存回收单元的回收能力以及回收效率低对内存回收单元的排列顺序进行调整的方案。
发明内容
本申请的目的在于提供一种电子设备及其内存回收方法、介质。
本申请的第一方面提供了一种内存回收方法,应用于电子设备,其特征在于,包括:
接收第一类内存回收指令;
响应于第一类内存回收指令,根据第一执行顺序执行多个内存回收子程序进行内存回收;
根据各内存回收子程序的执行时间和回收到的内存大小,确定各内存回收子程序的内存回收能力;
根据各内存回收子程序的内存回收能力,将多个内存回收子程序的执行顺序从第一执行顺序调整为第二执行顺序。
在上述第一方面的一种可能的实现中,第一类内存回收指令为Linux系统生成的直接内存回收指令。
即在本申请的实施例中,第一类内存回收指令可以是Linux系统执行的直接内存回收。内存回收子程序可以是Linux系统创建内存管理单元是生成的与内存管理单元对应的内存回收单元;第一执行顺序可以是由Linux系统将多个内存回收子程序加入到控制链表的时间先后确定的,也就是,第一执行顺序可以是由操作Linux系统创建内存管理单元的时间先后确定的。内存回收能力可以是内存回收子程序的执行结果,即,执行完内存回收子程序能够回收的最大回收内存或者单位时间内执行完内存回收子程序能够回收的最大回收内存。第二执行顺序可以是Linux系统根据内存回收子程序的内存回收能力调整控制链表中内存回收子程序的排列顺序后确定的。第二执行顺序可以是根据内存回收子程序的内存回收能力的高低,从高到低对内存回收子程序进行排列。
本申请实施例的方法,可以根据确定的内存回收子程序的内存回收能力调整控制链表中的内存回收子程序的排列顺序,实现智能调整控制链表中的内存回收子程序的排列顺序,例如:根据内存回收能力在控制链表中以降序的方式排列内存回收子程序,使得内存回收能力较好的内存回收子程序位于控制链表中靠前的位置;在只需执行控制链表中起始位置起的部分内存回收子程序就能完成内存回收的情况下,可以优先执行内存回收能力较好的内存回收子程序。
在上述第一方面的一种可能的实现中,第一执行顺序根据设置内存回收子程序的时间先后确定,且Linux系统通过预设控制链表记录第一执行顺序。
即在本申请的实施例中,Linux系统在创建内存管理单元时,为内存管理单元设置对应的内存回收子程序,第一执行顺序可以根据内存回收子程序加入预设控制链表的时间先后确定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于荣耀终端有限公司,未经荣耀终端有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210185733.1/2.html,转载请声明来源钻瓜专利网。