回收内存的方法、电子设备及存储介质与流程

文档序号:36249726发布日期:2023-12-02 19:09阅读:37来源:国知局
回收内存的方法、电子设备及存储介质与流程

本技术涉及内存管理,尤其涉及一种回收内存的方法、电子设备及存储介质。


背景技术:

1、随着电子设备(例如智能手机、平板电脑等)的发展,电子设备已成为人们日常生活中必不可缺的物品。电子设备中的系统以及所有应用程序(application,app)的运行都是在内存中进行的,因此内存的大小会对电子设备的性能产生重大影响。

2、实践中发现,用户在刚开始使用电子设备的时候,该电子设备非常顺滑,应用程序运行起来很流畅,而在该电子设备被长期使用后,随着安装的应用程序越来越多,会产生很多无用进程和服务,并且用户使用应用程序(例如浏览网页、在线听歌等)也会产生过多的缓存,导致累计使用的内存资源过多,从而导致电子设备的可用内存变少,进而导致电子设备出现卡顿、死机、重启等故障。

3、通常,电子设备的操作系统中设置有内存释放机制,譬如当内存不足时,操作系统会终结不必要的进程来回收内存,以此来保障电子设备的正常运行状态。然而,相关技术中的内存回收方案存在回收效率低的问题。


技术实现思路

1、本技术提供一种回收内存的方法、电子设备及存储介质,能够通过感知电子设备的内存回收情况,扩大进程的查杀范围,从而回收更多的可用内存,提高回收内存的效率,保障电子设备的正常运行,提升了用户的使用体验。

2、第一方面,本技术提供了一种回收内存的方法,该方法由电子设备执行,方法包括:当检测到内存回收失败时,将第一优先级提升至第二优先级;根据第二优先级确定待查杀进程;对待查杀进程进行查杀处理,以回收待查杀进程所占用的内存。

3、其中,第一优先级根据内存回收失败时被查杀的进程的优先级确定。

4、应理解,本技术实施例中的第一优先级、第二优先级是为了在描述上与其他优先级区分,并不是限定第一优先级高于第二优先级。相反,在本技术实施方式中,第二优先级的级别高于第一优先级的级别。

5、可选地,在一种可能的实现方式中,内存回收失败可以指回收到的内存量小于或等于预设回收量,即对进程进行查杀处理,回收到的内存量小于或等于预设回收量时,判定内存回收失败。在另一种可能的实现方式中,内存回收失败也可以指连续多次回收到的内存量小于或等于预设回收量。在又一种可能的实现方式中,内存回收失败还可以指在预设回收周期内,连续多次回收到的内存量小于或等于预设回收量。

6、第一方面提供的回收内存的方法,通过感知电子设备的内存回收情况,提升优先级,并根据提升后的优先级确定更多的待查杀进程,扩大了进程的查杀范围。对这些进程进行查杀处理,可以回收更多的可用内存,提高了回收内存的效率,保障了电子设备的正常运行,提升了用户的使用体验。

7、一种可能的实现方式中,将第一优先级提升至第二优先级,包括:获取预设回收周期内,内存回收失败时被查杀的各个进程的优先级;将第一进程的优先级确定为第一优先级;将第一优先级提升为第二优先级。

8、其中,第一进程的优先级的级别高于其他进程的优先级的级别,也就是说,第一进程的优先级的级别在内存回收失败时,被查杀的各个进程的优先级的级别中最高。

9、应理解,在一个预设回收周期内,可能会进行一次或多次内存回收。

10、这种实现方式中,第一优先级是原本内存回收过程中最高的优先级,在此基础上,提升该第一优先级的级别,得到第二优先级,后续根据该第二优先级可以确定新的待查杀进程,对新的待查杀进程进行查杀/终结,实现在原本内存回收的基础上,回收更多的可用内存,从而提高回收内存的效率,保障电子设备的正常运行,提升了用户的使用体验。

11、一种可能的实现方式中,本技术提供的回收内存的方法,在将第一进程的优先级确定为所述第一优先级之后,还包括:根据第一时刻的内存状态确定第三优先级;根据第一优先级和第三优先级,确定第二优先级。

12、其中,第三优先级为第一时刻的内存状态下应当查杀的进程的优先级,第一时刻晚于预设回收周期的结束时刻。

13、这种实现方式中,在确定第一优先级时考虑当前时刻电子设备的内存状态,考虑到了电子设备实时的可用内存,避免盲目提升优先级,保证最终进行进程查杀时使用的优先级的级别最高,回收更多的可用内存,从而提高回收内存的效率,保障电子设备的正常运行,提升了用户的使用体验。

14、一种可能的实现方式中,根据第二优先级确定待查杀进程,包括:当第二优先级对应的进程中包含前台进程时,获取前台进程占用的内存;当前台进程占用的内存大于或等于预设内存阈值时,将前台进程确定为待查杀进程。

15、这种实现方式中,考虑到查杀前台进程会对用户造成影响,因此对前台进程做出保护,当提升级别后的优先级对应的进程中包含前台进程时,根据前台进程占用的内存大小,判断是否对前台进程进行查杀。当前台进程占用的内存异常时,才对前台进程进行查杀,保障了前台进行的安全运行,有效降低误杀率,提升了用户的使用体验。

16、一种可能的实现方式中,本技术提供的回收内存的方法,在将第一优先级提升至第二优先级之前,还包括:在检测到第二时刻的内存状态满足第一条件时,确定第四优先级;根据第四优先级确定进程列表;若对进程列表中的进程进行查杀处理,回收到的内存量小于或等于预设回收量时,判定内存回收失败。

17、其中,第二时刻早于所述预设回收周期的起始时刻;第四优先级为第二时刻的内存状态下应当查杀的进程的优先级。

18、可选地,第一条件可以包括:当前的可用内存小于第一阈值,和/或,当前的可回收内存页小于第二阈值。

19、可选地,在本技术实施方式中,可以通过lmkd进程监控电子设备的内存状态。

20、这种实现方式中,当检测到电子设备的内存出现低内存情形时,对进程列表中的进程进行查杀处理,可以回收一些内存。当回收到的内存量小于或等于预设回收量时,判定内存回收失败,便于后续通过提升优先级的方式,扩大进程的查杀范围,从而回收更多的内存。

21、一种可能的实现方式中,本技术提供的回收内存的方法,在确定第四优先级之前,还包括:获取每个进程的运行状态;根据每个进程的运行状态,确定每个进程对应的重要程度值;根据每个进程对应的重要程度值,确定每个进程的优先级。

22、这种实现方式中,通过获取每个进程的运行状态,根据每个进程的运行状态,确定每个进程对应的重要程度值,再根据每个进程对应的重要程度值,确定了每个进程的优先级,为后续实现内存回收提供了保障。

23、一种可能的实现方式中,本技术提供的回收内存的方法,在根据每个进程对应的重要程度值,确定每个进程的优先级之后,还包括:将处于同一优先级的进程划分至同一个进程分组;根据划分后的多个进程分组确定多个进程列表。

24、这种实现方式中,便于对处于同一优先级的进程进行管理,有利于提高回收内存的效率。

25、第二方面,本技术提供了一种通信装置,该装置包含在电子设备中,该装置具有实现上述各方面及上述各方面的可能实现方式中电子设备行为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块或单元。例如,第一检测单元、第一确定单元、处理单元、第二检测单元、第二确定单元以及查杀单元等。

26、第三方面,本技术提供一种电子设备,电子设备包括:一个或多个处理器;一个或多个存储器;安装有多个应用程序的模块;存储器存储有一个或多个程序,当一个或者多个程序被处理器执行时,使得电子设备执行上述第一方面及其任意可能的实现方式中的方法。

27、第四方面,本技术提供一种芯片,包括处理器。处理器用于读取并执行存储器中存储的计算机程序,以执行第一方面及其任意可能的实现方式中的方法。

28、可选的,芯片还包括存储器,存储器与处理器通过电路或电线连接。

29、可选的,芯片还包括通信接口。

30、第五方面,本技术提供一种计算机可读存储介质,计算机可读存储介质中存储了计算机程序,当计算机程序被处理器执行时,使得该处理器执行第一方面及其任意可能的实现方式中的方法。

31、第六方面,本技术提供一种计算机程序产品,计算机程序产品包括:计算机程序代码,当计算机程序代码在电子设备上运行时,使得该电子设备执行第一方面及其任意可能的实现方式中的方法。

32、上述第二方面、第三方面、第四方面、第五方面以及第六方面所获得的技术效果与上述第一方面中对应的技术手段获得的技术效果近似,在这里不再赘述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1