内存处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:38683231 阅读:12 留言:0更新日期:2023-09-02 22:55
本申请公开了一种内存处理方法、装置、电子设备及存储介质,属于信息处理领域。该方法包括:在目标应用程序后台运行的情况下,监控第一指令队列和第二指令队列;所述第一指令队列用于缓存提交给图形处理器的渲染指令,所述第二指令队列用于缓存图形处理器执行中的渲染指令;在所述第一指令队列和所述第二指令队列均不包含所述目标应用程序的渲染指令的情况下,对所述目标应用程序对应的显示内存进行压缩处理。压缩处理。压缩处理。

【技术实现步骤摘要】
内存处理方法、装置、电子设备及存储介质


[0001]本申请属于信息处理领域,具体涉及一种内存处理方法、装置、电子设备及存储介质。

技术介绍

[0002]随着技术的不断发展,应用程序的内存越来越大,而运行应用程序的电子设备的运行内存在4GB/8GB/12GB/16GB不等,因此,相关技术中存在因内存不足而导致系统运行卡顿的问题。

技术实现思路

[0003]本申请实施例的目的是提供一种内存处理方法、装置、电子设备及存储介质,以解决系统运行卡顿的问题。
[0004]第一方面,本申请实施例提供了一种内存处理方法,该方法包括:
[0005]在目标应用程序后台运行的情况下,监控第一指令队列和第二指令队列;所述第一指令队列用于缓存提交给图形处理器的渲染指令,所述第二指令队列用于缓存图形处理器执行中的渲染指令;
[0006]在所述第一指令队列和所述第二指令队列均不包含所述目标应用程序的渲染指令的情况下,对所述目标应用程序对应的显示内存进行压缩处理。
[0007]第二方面,本申请实施例提供了一种内存处理装置,包括:
[0008]监控模块,用于在目标应用程序后台运行的情况下,监控第一指令队列和第二指令队列;所述第一指令队列用于缓存提交给图形处理器的渲染指令,所述第二指令队列用于缓存图形处理器执行中的渲染指令;
[0009]处理模块,用于在所述第一指令队列和所述第二指令队列均不包含所述目标应用程序的渲染指令的情况下,对所述目标应用程序对应的显示内存进行压缩处理。
[0010]第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
[0011]第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
[0012]第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。
[0013]第六方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法。
[0014]在本申请实施例中,在目标应用程序后台运行的情况下,监控第一指令队列和第二指令队列;所述第一指令队列用于缓存提交给图形处理器的渲染指令,所述第二指令队
列用于缓存图形处理器执行中的渲染指令;在所述第一指令队列和所述第二指令队列均不包含所述目标应用程序的渲染指令的情况下,对所述目标应用程序对应的显示内存进行压缩处理。通过压缩目标应用程序对应的显示内存,减少目标应用程序的显示内存占用,缓解电子设备的内存不足的情况,以避免系统卡顿。
附图说明
[0015]图1为本申请实施例提供的内存处理方法流程示意图;
[0016]图2为本申请实施例中图形处理器的渲染指令处理示意图;
[0017]图3为本申请实施例提供的分析流程示意图;
[0018]图4为本申请实施例提供的压缩处理流程示意图;
[0019]图5为本申请实施例提供的内存处理装置结构示意图;
[0020]图6为本申请实施例提供的电子设备结构示意图;
[0021]图7为实现本申请实施例的一种电子设备的硬件结构示意图。
具体实施方式
[0022]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
[0023]本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
[0024]下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的内存处理方法、装置、电子设备及存储介质进行详细地说明。
[0025]图1为本申请实施例提供的内存处理方法流程示意图,如图1所示,包括:
[0026]步骤110,在目标应用程序后台运行的情况下,监控第一指令队列和第二指令队列;所述第一指令队列用于缓存提交给图形处理器的渲染指令,所述第二指令队列用于缓存图形处理器执行中的渲染指令;
[0027]本申请实施例中,目标应用程序具体可以是安装在电子设备中的应用程序,其具体可以是系统影城程序,也可以是第三方应用程序,例如,游戏应用程序,地图应用程序,或者视频应用程序等等。
[0028]目标应用程序后台运行,具体可以是指目标应用被切换到电子设备后台运行的情况,其具体可以是用户手动将应用程序切换到后台运行,也可以是被其他应用程序调用切换到后台运行。
[0029]本申请实施例中的图形处理器是指设置在电子设备中,用于进行图形处理工作的处理器,根据图形处理器的运行原理,在电子设备的显示元件上所显示的内容,需要由应用程序主动向图形处理器提交渲染指令,从而指挥图形处理器和显示元件的工作。
[0030]一般来说,图形处理器与应用程序交互过程中,存在两个指令队列,一个是应用程序与图形处理器之间的第一指令队列,该队列中缓存有应用程序提交给图形处理器的渲染指令;另一个是图形处理器与显示元件之间的第二指令队列,该队列中缓存有图形处理器正在执行的渲染指令。
[0031]在一个可选地实施例中,每一个目标应用程序对应有一个第一指令队列和第二指令队列,即在不同目标应用程序的渲染指令缓存在不同的第一指令队列和不同的第二指令队列中。
[0032]例如,第一目标应用程序提交给图形处理器的渲染指令均缓存在第一目标指令队列中,图像处理器正在执行中的来自第一目标应用程序的渲染指令均缓存在第二目标指令队列中;第二目标应用程序提交给图形处理器的渲染指令均缓存在第三目标指令队列中,图像处理器正在执行中的,来自第二目标应用程序的渲染指令均缓存在第四目标指令队列中。
[0033]在另一个可选地实施例中,多个应用程序均对应同一个第一指令队列和第二指令队列,即多个不同目标应用程序的渲染指令缓存在同一个第一指令队列和同一个第二指令队列中。
[0034]例如,第一目标应用程序和第二目标应用程序提交给图形处理器的渲染指令均缓存在同一第一指令队列中,图像处理器正在执行中的来自第一目标应用程序和第二目标应用程序的渲染指令均缓存在同一第二指令队列中。
[0035]图2为本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种内存处理方法,其特征在于,包括:在目标应用程序后台运行的情况下,监控第一指令队列和第二指令队列;所述第一指令队列用于缓存提交给图形处理器的渲染指令,所述第二指令队列用于缓存图形处理器执行中的渲染指令;在所述第一指令队列和所述第二指令队列均不包含所述目标应用程序的渲染指令的情况下,对所述目标应用程序对应的显示内存进行压缩处理。2.根据权利要求1所述的内存处理方法,其特征在于,所述目标应用程序对应的显示内存包括N个显示内存块;所述对所述目标应用程序对应的显示内存进行压缩处理,包括:解除目标显示内存块与所述图形处理器之间的映射关系,并解除所述目标显示内存块与中央处理器之间的映射关系,其中,所述目标显示内存块是所述N个显示内存块中未携带有不可压缩标识的显示内存块,或者,所述目标显示内存块是所述N个显示内存块中携带有可压缩标识的显示内存块;对所述目标显示内存块进行压缩处理。3.根据权利要求1所述的内存处理方法,其特征在于,在所述对所述目标应用程序对应的显示内存进行压缩处理之后,还包括:生成压缩完成标识,所述压缩完成标识用于指示所述压缩处理完成。4.根据权利要求3所述的内存处理方法,其特征在于,在所述生成压缩完成标识之后,还包括:在所述目标应用程序切换至前台运行、且读取到所述压缩完成标识的情况下,对压缩处理后的所述显示内存进行解压处理。5.根据权利要求1所述的内存处理方法,其特征在于,所述在所述第一指令队列和所述第二指令队列均不包含所述目标应用程序的渲染指令的情况下,对所述目标应用程序对应的显示内存进行压缩处理,包括:在所述第一指令队列和所述第二指令队列均为空的情况下,对所述目标应用程序对应的显示内存进行压缩处理。6.一种内存处理装置,其特征在于,包括:监控模块,用于在目标应用程序后台运行的情况下,监控第一指令队列和第二指令队列;所述第一指令队列用于缓存提交给图形处理器的渲染指令,所述...

【专利技术属性】
技术研发人员:吴德安
申请(专利权)人:维沃移动通信有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1