一种分配终端内存的方法和设备技术

技术编号:20117103 阅读:39 留言:0更新日期:2019-01-16 11:57
本发明专利技术公开了一种分配终端内存的方法和设备,用以解决目前终端绘图应用进程运行过程中因系统空闲内存不足运行速度较慢的问题。本发明专利技术实施例首先接收应用对应的内存申请;最后在所述内存申请为绘图申请后,从系统内存中的绘图内存池中划分内存分配给所述应用进程使用。上述方法通过绘图内存预分配的方式,有效的提升了绘图应用进程相关操作的响应速度。

A Method and Equipment for Allocating Terminal Memory

The invention discloses a method and equipment for allocating terminal memory to solve the problem of slow running speed due to insufficient free memory of the system during the operation of the current terminal drawing application process. The embodiment of the present invention first receives the memory application corresponding to the application, and finally, after the memory application is a drawing application, divides the memory from the drawing memory pool in the system memory and allocates it to the application process for use. The above method effectively improves the response speed of related operations in drawing application process by means of pre-allocation of drawing memory.

【技术实现步骤摘要】
一种分配终端内存的方法和设备
本专利技术涉及计算机领域,特别涉及一种分配终端内存的方法和设备。
技术介绍
目前系统中各应用进程运行时共同使用系统内存,在应用程序运行过程中,会不断进行内存的分配和释放,而在系统中当某一硬件要读取数据时,会首先从缓存中查找需要的数据,因此,系统为了加快某一进程再次运行时的操作速度,对某一进程此前在运行时所占用的内存并不进行完全释放,从而形成应用缓存,而某一应用所形成的缓存同样占用系统内存,因此,经常发现系统经过长时间运行后,内存占用率越来越高,甚至出现内存分配失败的情况,最终导致程序崩溃。而随着科技的不断发展,有关绘图设计操作的需求量越来越大,而绘图应用进程作为视觉展示进程,有着相对其他应用进程较高的优先级,但是大部分绘图应用进程在进行运行时,经常因为当前系统下其他应用进程产生的缓存较多,占用了大部分的系统内存,从而使系统内存中可用的内存较少,因此,绘图应用进程在运行时经常需要系统先对部分缓存进行回收得到新的可用内存,才能保证绘图应用进程继续运行,但因为绘图应用进程在运行过程中经常需要向系统中的内存频繁的进行内存申请和内存释放,而这一过程需要消耗一定的时间进行实现,因此,经常会导致绘图应用进程在运行过程中运行速度较慢,出现卡顿延迟的问题。综上所述,目前终端绘图应用进程运行过程中因系统空闲内存不足运行速度较慢。
技术实现思路
本专利技术提供一种分配终端内存的方法和设备,用以解决目前终端绘图应用进程运行过程中因系统空闲内存不足运行速度较慢的问题。第一方面,本专利技术实施例提供的一种分配终端内存的方法包括:首先接收应用对应的内存申请;最后在所述内存申请为绘图申请后,从系统内存中的绘图内存池中划分内存分配给所述应用进程使用。上述方法,将系统内存中的部分内存确定为绘图内存池,即相当于系统内存事先确定一部分内存专门提供给绘图应用进程进行使用,其他应用进程无法占用绘图内存池中的内存,因此,在有绘图应用进程进行绘图内存申请时,绘图内存池中直接提供部分内存分给绘图应用进程使用,有效的提升了绘图应用进程相关操作的响应速度。在一种可能的实现方式中,若所述绘图内存池中未分配的内存大小不大于申请限值,则将系统内存中除绘图内存池之外的部分空闲的内存加入到所述绘图内存池中。上述方法,通过设定申请限值,每次绘图应用进程进行绘图内存申请时都对绘图内存池中未分配的内存进行确定,更好的确定当前绘图内存池中的未分配的内存的状态。在确定所述绘图内存池中未分配的内存大小不大于申请限值时,将系统内存中除绘图内存池之外的部分空闲的内存加入到所述绘图内存池中,更好的确保绘图内存池中的未分配内存够绘图应用进程使用。在一种可能的实现方式中,在需要释放所述绘图内存池中的内存时,判断所述绘图内存池中未分配的内存的大小是否大于释放限值;如果大于,则将释放的所述绘图内存池中的内存加入到系统内存中非绘图内存池中;否则,将释放的所述绘图内存池中的内存加入到系统绘图内存池中。上述方法,在需要释放所述绘图内存池中的内存时,判断所述绘图内存池中未分配的内存的大小是否大于释放限值后,在大于阈值时将释放的内存加入到系统内存中非绘图内存池中,减少绘图内存池对系统内存不必要的占用,同时,在不大于阈值时将释放的内存加入到系统内存中非绘图内存池中,更好的确保绘图内存池中的内存足够绘图应用进程使用。在一种可能的实现方式中,当系统内存中非绘图内存池中的内存小于非绘图内存限值时,将绘图内存池中的剩余内存加入到系统内存中的非绘图内存池中。上述方法,在系统内存严重不足时,且绘图内存池中还剩余内存时,将绘图内存池中的部分剩余内存加入到系统内存中的非绘图内存池中,更好的保证系统其它应用进程的顺利运行。在一种可能的实现方式中,加入非绘图内存池后的绘图内存池中剩余内存不小于最低内存值。上述方法,通过设定绘图内存池中的剩余内存的最低内存值,可以在系统内存严重不足时,将绘图内存池中保留限定值外的剩余内存加入到系统内存中的非绘图内存池中,即可以更好的保证系统其它应用进程的顺利运行,又可以使绘图应用进程在绘图内存池所保留的最低内存值下更好的运行。第二方面,本专利技术实施例还提供了一种分配终端内存的设备,该设备包括:处理单元以及存储单元,其中,所述存储单元存储有程序代码,当所述程序代码被所述处理单元执行时,使得所述处理单元执行上述第一方面的各实施例的功能。第三方面,本专利技术实施例还提供一种分配终端内存的设备,该设备包括:接收模块、处理模块,该设备具有实现上述第一方面的各实施例的功能。第四方面,本申请还提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述方法的步骤。另外,第二方面至第四方面中任一一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种分配终端内存的方法示意图;图2为本专利技术实施例将固定空闲的内存加入到绘图内存池中示意图;图3为本专利技术实施例绘图内存池中加入的内存使其满足固定值示意图;图4为本专利技术实施例将释放的内存加入到非绘图内存池中示意图;图5为本专利技术实施例将释放的内存加入到绘图内存池中示意图;图6为本专利技术实施例第一种分配终端内存的设备的结构示意图;图7为本专利技术实施例第二种分配终端内存的设备的结构示意图;图8为本专利技术实施例一种终端的结构示意图;图9为本专利技术实施例进行内存申请相关流程操作示意图;图10为本专利技术实施例进行内存释放相关流程操作示意图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术作进一步地详细描述,显然,所描述的实施例仅仅是本专利技术一部份实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。下面对文中出现的一些词语进行解释:(1)本申请实施例中术语“多个”是指两个或两个以上,其它量词与之类似。(2)“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。(3)本专利技术实施例所指的“链表”是指一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。(4)本专利技术实施例所指的“线程”是指程序执行流的最小单元,是程序中一个单一的顺序控制流程。(5)本专利技术实施例所指的“内存池”是指在真正使用内存之前,先申请分配一定数量的、大小相等(一般情况下)的内存块留作备用,当有新的内存需求时,就从内存池中分出一部分内存块,若内存块不够再继续申请新的内存。(6)本专利技术实施例所指的“ION”是指谷歌下一代内存管理器,用来支持不同的内存分配机制。(7)本专利技术实施例所指的“申请限值”是指确定绘图内存池是否需要申请系统内存中除绘图内存池之外的部分空闲的内存加入到所述绘图内存池中的限定值。(8本文档来自技高网...

【技术保护点】
1.一种分配终端内存的方法,其特征在于,所述方法包括:接收应用对应的内存申请;在所述内存申请为绘图申请后,从系统内存中的绘图内存池中划分内存分配给所述应用进程使用。

【技术特征摘要】
1.一种分配终端内存的方法,其特征在于,所述方法包括:接收应用对应的内存申请;在所述内存申请为绘图申请后,从系统内存中的绘图内存池中划分内存分配给所述应用进程使用。2.如权利要求1所述的方法,其特征在于,该方法还包括:若所述绘图内存池中未分配的内存大小不大于申请限值,则将系统内存中除绘图内存池之外的部分空闲的内存加入到所述绘图内存池中。3.如权利要求2所述的方法,其特征在于,该方法包括:在需要释放所述绘图内存池中的内存时,判断所述绘图内存池中未分配的内存的大小是否大于释放限值;如果大于,则将释放的所述绘图内存池中的内存加入到系统内存中非绘图内存池中;否则,将释放的所述绘图内存池中的内存加入到系统绘图内存池中。4.如权利要求1~3任一所述的方法,其特征在于,该方法还包括:当系统内存中非绘图内存池中的内存小于非绘图内存限值时,将绘图内存池中的剩余内存加入到系统内存中的非绘图内存池中。5.如权利要求4所述的方法,其特征在于,加入非绘图内存池后的绘图内存池中剩余内存不小于最低内存值。6.一种分配终端内存的设备,其特征在于,该设备包括:处理单元以及存储单元...

【专利技术属性】
技术研发人员:李川俞茂学
申请(专利权)人:青岛海信移动通信技术股份有限公司
类型:发明
国别省市:山东,37

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

1