CN103500121A - 一种进程管理方法及装置 - Google Patents
一种进程管理方法及装置 Download PDFInfo
- Publication number
- CN103500121A CN103500121A CN201310460349.9A CN201310460349A CN103500121A CN 103500121 A CN103500121 A CN 103500121A CN 201310460349 A CN201310460349 A CN 201310460349A CN 103500121 A CN103500121 A CN 103500121A
- Authority
- CN
- China
- Prior art keywords
- correlation
- correlation factor
- degree
- factor
- comparisons
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种进程管理方法及装置,其中,该方法包括:检测***中的至少一个进程的运行属性,该运行属性包括该进程在运行过程涉及的至少一种该进程的相关因子以及该相关因子与本***内其它进程和/或第三方服务器的相关度等级,根据该进程的运行属性和预设的对照表计算该进程的优先级值;当***的剩余内存空间小于预设的内存阀值时,关闭优先级值大于预设优先级关闭值的进程,以使该***的剩余内存空间大于预设的内存阀值。采用本发明,通过检测***中的各进程的运行属性确定各进程的优先级值,即使该进程由前台转为后台了,也不影响该进程的优先级值,从而可降低重要进程因内存不足而被关闭的可能性,可更合理的对各进程进行管理。
Description
技术领域
本发明涉及到终端设备程序管理技术领域,特别涉及到一种进程管理方法及装置。
背景技术
随着终端设备,如手机、个人数码助理(Personal Digital Assistant,PDA)智能电视等设备的内置存储器容量的扩大、操作功能的日益强大,终端设备中可以开发安装的应用程序越来越多,功能越来越丰富。人们可以利用该终端设备进行通讯,还可以上网、拍照、玩游戏等,即可在该终端设备上打开多个进程。但是,随着打开进程的个数的增多,该终端设备的内存空间的使用也增多。
在现有技术中,安卓(Android)***的内存管理采用以下策略:在进程活动停止后把这些进程都保留在内存中,直到***需要更多内存为止;这些保留在内存中的进程通常情况下不会影响整体***的运行速度,并且当用户再次激活这些进程时,提升了进程的启动速度;而在内存不够的时候,***会对进程的重要性进行评估,并将重要性以“OOM_ADJ(进程优先级值)”这个数值表示出来;安卓***则会根据“OOM_ADJ”来判断需要结束哪些进程,一般来说,“OOM_ADJ”的值越大,则该进程被***选中终止的可能就越高。目前安卓***将进程分为如下几类:前台进程、可见进程、服务进程、后台进程、空进程,其优先级依次降低,即前台进程的OOM_ADJ值<可见进程的OOM_ADJ值<服务进程的OOM_ADJ值<后台进程的OOM_ADJ值<空进程的OOM_ADJ值。
以上现有技术中安卓***的内存管理策略基本满足了开发的需求,但对于高定制化的***,仍有其不足之处。例如,对于基于安卓***开发的厂商(以下简称厂商用户)来讲,其开发的某款APP(应用)退出前台转入后台时,APP进程优先级变为后台进程,而后台进程在***内存不够的时候很容易被***关闭;但对于厂商用户来讲,该APP属于重要的功能型应用,不希望该APP转入后台时成为后台进程,即不希望***在内存不够的时候结束该APP。
发明内容
本发明的主要目的为提供一种进程管理方法及装置,旨在根据各进程的运行属性确定各进程的优先级值,可更合理的对各进程进行管理。
本发明提供一种进程管理方法,该方法包括:
检测***中的至少一个进程的运行属性,所述运行属性包括所述进程在运行过程涉及的至少一种所述进程的相关因子以及所述相关因子与本***内其它进程和/或第三方服务器的相关度等级,所述相关因子包括所述进程实现功能,所述相关度等级为所述进程与本***其它进程的关联性强弱和/或与第三方服务器的依赖性强弱;
根据所述进程的运行属性和预设的对照表计算所述进程的优先级值,所述对照表包括相关因子及相关因子对应的相关度等级的相关度值;
当***的剩余内存空间小于预设的内存阀值时,关闭优先级值大于预设优先级关闭值的进程,以使所述***的剩余内存空间大于预设的内存阀值。
优选地,所述根据所述进程的运行属性和预设的对照表计算所述进程的优先级值的步骤包括:
根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的相关度等级的相关度值,并将查找的各相关度值累加以得到所述进程的优先级值。
优选地,所述预设的对照表还包括相关因子对应的权重。
优选地,所述根据所述进程的运行属性和预设的对照表计算所述进程的优先级值的步骤包括:
根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;将各相关因子的乘积值累加以得到所述进程的优先级值。
优选地,所述根据所述进程的运行属性和预设的对照表计算所述进程的优先级值的步骤包括:
根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;再将各相关因子的乘积值与各相关因子的所有相关度等级的相关度值的和相除,以得到各相关因子的比值;
将各相关因子的比值累加以得到所述进程的优先级值。
本发明还提供一种进程管理装置,包括:检测模块,与所述检测模块连接的计算模块,与所述计算模块连接的回收模块;其中:
该检测模块用于检测***中的至少一个进程的运行属性,所述运行属性包括所述进程在运行过程涉及的至少一种所述进程的相关因子以及所述相关因子与本***内其它进程和/或第三方服务器的相关度等级,所述相关因子包括所述进程实现功能,所述相关度等级为所述进程与本***其它进程的关联性强弱和/或与第三方服务器的依赖性强弱;
该计算模块用于根据所述进程的运行属性和预设的对照表计算所述进程的优先级值,所述对照表包括相关因子及相关因子对应的相关度等级的相关度值;
该回收模块用于当***的剩余内存空间小于预设的内存阀值时,关闭优先级值大于预设优先级关闭值的进程,以使所述***的剩余内存空间大于预设的内存阀值。
优选地,所述计算模块包括第一计算单元,所述第一计算单元用于根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的相关度等级的相关度值,并将查找的各相关度值累加以得到所述进程的优先级值。
优选地,所述预设的对照表还包括相关因子对应的权重。
优选地,所述计算模块包括:
第二计算单元,根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;
第三计算单元,用于将各相关因子的乘积值累加以得到所述进程的优先级值。
优选地,所述计算模块包括:
第四计算单元,用于根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;再将各相关因子的乘积值与各相关因子的所有相关度等级的相关度值的和相除,以得到各相关因子的比值;
第五计算单元,用于将各相关因子的比值累加以得到所述进程的优先级值。
本发明实施例中,通过检测***中的各进程的运行属性确定各进程的优先级值,综合考虑各进程实现功能与其它进程和/或第三方服务器之间相关度等级确定优先级,即使该进程由前台转为后台了,也不影响该进程的优先级值,从而可降低重要进程因内存不足而被关闭的可能性,可更合理的对各进程进行管理。
附图说明
图1为本发明的进程管理方法的流程示意图;
图2为图1中步骤S20的一实施例的具体流程示意图;
图3为图1中步骤S20的另一实施例的具体流程示意图;
图4为本发明的进程管理装置的结构示意图;
图5为图4中计算模块的一实施例的具体结构示意图;
图6为图4中计算模块的另一实施例的具体结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明的进程管理方法的流程示意图,该方法包括:
S10、检测***中的至少一个进程的运行属性,该运行属性包括该进程在运行过程涉及的至少一种该进程的相关因子以及该相关因子与本***内其它进程和/或第三方服务器的相关度等级,该相关因子包括该进程实现功能,该相关度等级为该进程与本***其它进程的关联性强弱和/或与第三方服务器的依赖性强弱。
在该步骤S10中,检测***中的至少一个进程的运行属性,如***当前打开的进程有:进程P1、进程P2、进程P3等,则检测该些进程的运行属性;该些进程的运行属性包括该些进程在运行过程涉及的至少一种该进程的相关因子以及该相关因子与本***内其它进程和/或第三方服务器的相关度等级。该相关因子包括该进程实现功能,如该相关因子为TV因子、网络因子、基础功能因子、后台服务因子等。
如检测进程P1的运行属性,该进程P1的运行属性包括TV因子、TV因子对应的相关度等级为二级。如检测进程P2的运行属性,该进程P2的运行属性包括TV因子、网络因子、TV因子对应的相关度等级为三级、网络因子的相关度等级为二级。
S20、根据该进程的运行属性和预设的对照表计算该进程的优先级值,该对照表包括相关因子及相关因子对应的相关度等级的相关度值;
该预设的对照表可由用户根据实际需要预先设置,该对照表如表一所示。
表一
根据步骤S10中获得的进程的运行属性在该预设的对照表中查找对应的相关度值,以计算该进程的优先级值。如进程P1的运行属性的TV因子对应的相关度等级为二级时,对应的相关度值为A2。
S30、当***的剩余内存空间小于预设的内存阀值时,关闭优先级值大于预设优先级关闭值的进程,以使该***的剩余内存空间大于预设的内存阀值。
该预设的内存阀值K可由用户根据实际情况设置,如可设置内存阀值K为100M,该预设优先级关闭值也可由用户根据实际情况设置,如可设置关闭值T为10;则当***的剩余内存空间小于预设的内存阀值100M时,依次关闭优先级值大于10的进程,以使该***的剩余内存空间大于预设的内存阀值。如可设置内存阀值K为80M,及设置该预设优先级关闭值T为5,则当***的剩余内存空间小于预设的内存阀值80M时,依次关闭优先级值大于5的进程。
具体的,该预设优先级关闭值T可包括第一预设优先级关闭值T1和第二预设优先级关闭值T2,该第一预设优先级关闭值T1大于第二预设优先级关闭值T2;如该第一预设优先级关闭值为10,该第二预设优先级关闭值为5。
当***的剩余内存空间小于预设的内存阀值时,按照优先级值从高到低的排序,依次关闭优先级值大于第一预设优先级关闭值T1的进程;若关闭所有优先值大于第一预设优先级关闭值T1的进程后,该***的剩余内存空间仍小于预设的内存阀值,再依次关闭优先级值大于第二预设优先级关闭值T2的进程,以使该***的剩余内存空间大于预设的内存阀值。
进一步的,该步骤S20、根据该进程的运行属性和预设的对照表计算该进程的优先级值的步骤包括:
S21、根据该进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的相关度等级的相关度值,并将查找的各相关度值累加以得到该进程的优先级值。
如进程P1的运行属性的TV因子对应的相关度等级为二级时,对应的相关度值为A2,则进程P1的优先级值为A2;如进程P2的运行属性的TV因子对应的相关度等级为三级时,对应的相关度值为A3,网络因子的相关度等级为二级,对应的相关度等级为B2,则进程P2的优先级值为A3+B2。
参照图2,图2为图1中步骤S20的一实施例的具体流程示意图,该预设的对照表还包括相关因子对应的权重,该对照表还可以如表二所示。
表二
该步骤S20包括:
S22、根据该进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值。
在该步骤S22中,根据进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值,如查找到进程P1的TV因子对应的权重为M1,及查找到该TV因子对应的相关度等级为二级时的相关度值为A2;如查找到进程P2的TV因子对应的权重为M1和网络因子对应的权重为M2,及查找到该TV因子对应的相关度等级为三级时的相关度值为A3、网络因子对应的相关度等级为二级时的相关度值为B2。将相关度值A2与权重M1相乘,以得到进程P1的TV因子的乘积值;将相关度值A3与权重M1相乘,以得到进程P2的TV因子的乘积值;将相关度值B2与权重M2相乘,以得到进程P2的网络因子的乘积值。
当进程Pi包括多个相关因子时,则分别获取各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值,如各相关因子对应的权重分别为M1、M2、M3……Mn(其中n表示相关因子的个数),各相关因子对应的相关度等级的相关度值分别为:Ax、Bx、Cx……Nx(其中x表示相关因子对应的相关度等级,如x为1、2、3或0,);该进程Pi的各相关因子的乘积值为:M1*Ax、M2*Bx、M3*Cx……Mn*Nx。
S23、将各相关因子的乘积值累加以得到该进程的优先级值。
在该步骤S23中,将同一进程的所有相关因子的乘积值累加,以得到该进程的优先级值,如进程P1只有一个相关因子(TV因子),则在步骤S22中计算的A2*M1即为该进程P1的优先级值;如进程P2有两个相关因子(TV因子和网络因子),则将步骤S22中计算的A3*M1和B2*M2的值相加得到该进程P2的优先级值。
当进程Pi包括多个相关因子时,该进程Pi的优先级值为:Y=M1*Ax+M2*Bx+M3*Cx+……+Mn*Nx,其中:Y表示进程Pi的优先级值、n表示相关因子的个数、x表示相关因子对应的相关度等级。
参照图3,图3为图1中步骤S20的另一实施例的具体流程示意图,该预设的对照表还包括相关因子对应的权重,该对照表如上述表二所示。该步骤S20包括:
S24、根据该进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;再将各相关因子的乘积值与各相关因子的所有相关度等级的相关度值的和相除,以得到各相关因子的比值;
在该步骤S24中,根据进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值,如查找到进程P1的TV因子对应的权重为M1,及查找到该TV因子对应的相关度等级为二级时的相关度值为A2;如查找到进程P2的TV因子对应的权重为M1和网络因子对应的权重为M2,及查找到该TV因子对应的相关度等级为三级时的相关度值为A3、网络因子对应的相关度等级为二级时的相关度值为B2。将相关度值A2与权重M1相乘,以得到进程P1的TV因子的乘积值;将相关度值A3与权重M1相乘,以得到进程P2的TV因子的乘积值;将相关度值B2与权重M2相乘,以得到进程P2的网络因子的乘积值。当进程Pi包括多个相关因子时,则分别获取各相关因子对应的权重和各相关因子对应的相关度等级的相关度值,如各相关因子对应的权重分别为M1、M2、M3……Mn(其中n表示相关因子的个数),各相关因子对应的相关度等级的相关度值分别为:Ax、Bx、Cx……Nx(其中x表示相关因子对应的相关度等级,如x为1、2、3或0,);该进程Pi的各相关因子的乘积值为:M1*Ax、M2*Bx、M3*Cx……Mn*Nx。
将各相关因子的乘积值与各相关因子的所有相关度等级的相关度值的和相除,以得到各相关因子的比值,如对进程P1的各相关因子的比值的计算:TV因子的比值为A2*M1/(A1+A2+A3+A0),其中A1、A2、A3、A0表示TV因子的4个相关度等级的相关度值;如对进程P2的各相关因子的比值计算:TV因子的比值为A3*M1/(A1+A2+A3+A0),其中A1、A2、A3、A0表示TV因子的4个相关度等级的相关度值,网络因子的比值为B2*M2/(B1+B2+B3+B4),其中B1、B2、B3、B4表示网络因子的4个相关度等级的相关度值。
S25、将各相关因子的比值累加以得到该进程的优先级值。
在该步骤S25中,将同一进程的所有相关因子的比值累加,以得到该进程的优先级值,如进程P1只有一个相关因子(TV因子),则在步骤S24中计算的A2*M1/(A1+A2+A3+A0)即为该进程P1的优先级值;如进程P2有两个相关因子(TV因子和网络因子),则将步骤S24中计算的A3*M1/(A1+A2+A3+A0)和B2*M2/(B1+B2+B3+B4)的值相加得到该进程P2的优先级值。
当进程Pi包括多个相关因子时,该进程Pi的优先级值为:Y=M1*Ax/(A1+A2+A3+A0)+M2*Bx/(B1+B2+B3+B0)+M3*Cx/(C1+C2+C3+C0)+……+Mn*Nx/(N1+N2+N3+N0),其中:Y表示进程Pi的优先级值、n表示相关因子的个数、x表示相关因子对应的相关度等级。
优选地,在步骤S25中,可将各相关因子的比值乘以100后再累加以得到该进程的优先级值,如进程P1的优先级值为100*A2*M1/(A1+A2+A3+A0),进程P2的优先级值为100*A3*M1/(A1+A2+A3+A0)+100*B2*M2/(B1+B2+B3+B4),进程Pi的优先级值为100*M1*Ax/(A1+A2+A3+A0)+100*M2*Bx/(B1+B2+B3+B0)+100*M3*Cx/(C1+C2+C3+C0)+……+100*Mn*Nx/(N1+N2+N3+N0)。在该步骤S25中,将各相关因子的比值乘以100可使得最后得到的各进程的优先级值在1-100之间,可使得计算出的各进程的优先级值更加直观。
参照图4,图4为本发明的进程管理装置的结构示意图,该装置包括:检测模块10,与该检测模块10连接的计算模块20,与该计算模块20连接的回收模块30;其中:
该检测模块10用于检测***中的至少一个进程的运行属性,该运行属性包括该进程在运行过程涉及的至少一种该进程的相关因子以及该相关因子与本***内其它进程和/或第三方服务器的相关度等级,该相关因子包括该进程实现功能,该相关度等级为该进程与本***其它进程的关联性强弱和/或与第三方服务器的依赖性强弱;
该计算模块20用于根据该进程的运行属性和预设的对照表计算该进程的优先级值,该对照表包括相关因子及各相关因子对应的相关度等级的相关度值;
该回收模块30用于当***的剩余内存空间小于预设的内存阀值时,关闭优先级值大于预设优先级关闭值的进程,以使该***的剩余内存空间大于预设的内存阀值。
该检测模块10检测***中的至少一个进程的运行属性,如***当前打开的进程有:进程P1、进程P2、进程P3等,则检测该些进程的运行属性;该些进程的运行属性包括该些进程在运行过程涉及的至少一种该进程能的相关因子以及该相关因子与本***内其它进程和/或第三方服务器的相关度等级。该相关因子包括该进程实现功能,如该相关因子为TV因子、网络因子、基础功能因子、后台服务因子等。
如检测进程P1的运行属性,该进程P1的运行属性包括TV因子、TV因子对应的相关度等级为二级。如检测进程P2的运行属性,该进程P2的运行属性包括TV因子、网络因子、TV因子对应的相关度等级为三级、网络因子的相关度等级为二级。
该预设的对照表可由用户根据实际需要预先设置,该对照表如上述表一所示。
该计算模块20根据检测模块获得的进程的运行属性在该预设的对照表中查找对应的相关度值,以计算该进程的优先级值。如进程P1的运行属性的TV因子对应的相关度等级为二级时,对应的相关度值为A2。
该预设的内存阀值K可由用户根据实际情况设置,如可设置内存阀值K为100M,该预设优先级关闭值也可由用户根据实际情况设置,如可设置关闭值T为10;该回收模块30在***的剩余内存空间小于预设的内存阀值100M时,依次关闭优先级值大于10的进程,以使该***的剩余内存空间大于预设的内存阀值。如可设置内存阀值K为80M,及设置该预设优先级关闭值T为5,则该回收模块30在***的剩余内存空间小于预设的内存阀值80M时,依次关闭优先级值大于5的进程。
具体的,该预设优先级关闭值T可包括第一预设优先级关闭值T1和第二预设优先级关闭值T2,该第一预设优先级关闭值T1大于第二预设优先级关闭值T2;如该第一预设优先级关闭值为10,该第二预设优先级关闭值为5。
当***的剩余内存空间小于预设的内存阀值时,该回收模块30按照优先级值从高到低的排序,依次关闭优先级值大于第一预设优先级关闭值T1的进程;若关闭所有优先值大于第一预设优先级关闭值T1的进程后,该***的剩余内存空间仍小于预设的内存阀值,该回收模块30再依次关闭优先级值大于第二预设优先级关闭值T2的进程,以使该***的剩余内存空间大于预设的内存阀值。
进一步的,该计算模块20包括第一计算单元21,该第一计算单元21用于根据该进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的相关度等级的相关度值,并将查找的各相关度值累加以得到该进程的优先级值。
如进程P1的运行属性的TV因子对应的相关度等级为二级时,对应的相关度值为A2,则进程P1的优先级值为A2;如进程P2的运行属性的TV因子对应的相关度等级为三级时,对应的相关度值为A3,网络因子的相关度等级为二级,对应的相关度等级为B2,则进程P2的优先级值为A3+B2。
参照图5,图5为本发明的进程管理装置的计算模块的一实施例的具体结构示意图,该预设的对照表还包括相关因子对应的权重,该对照表还可以如上述表二所示,该计算模块20包括:
第二计算单元22,根据该进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;
第三计算单元23,用于将各相关因子的乘积值累加以得到该进程的优先级值。
该第二计算单元22根据进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值,如查找到进程P1的TV因子对应的权重为M1,及查找到该TV因子对应的相关度等级为二级时的相关度值为A2;如查找到进程P2的TV因子对应的权重为M1和网络因子对应的权重为M2,及查找到该TV因子对应的相关度等级为三级时的相关度值为A3、网络因子对应的相关度等级为二级时的相关度值为B2;将相关度值A2与权重M1相乘,以得到进程P1的TV因子的乘积值;将相关度值A3与权重M1相乘,以得到进程P2的TV因子的乘积值;将相关度值B2与权重M2相乘,以得到进程P2的网络因子的乘积值。
当进程Pi包括多个相关因子时,则该第一计算单元分别获取各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值,如各相关因子对应的权重分别为M1、M2、M3……Mn(其中n表示相关因子的个数),各相关因子对应的相关度等级的相关度值分别为:Ax、Bx、Cx……Nx(其中x表示相关因子对应的相关度等级,如x为1、2、3或0,);该进程Pi的各相关因子的乘积值为:M1*Ax、M2*Bx、M3*Cx……Mn*Nx。
该第三计算单元23将同一进程的所有相关因子的乘积值累加,以得到该进程的优先级值,如进程P1只有一个相关因子(TV因子),则第一计算单元计算的A2*M1即为该进程P1的优先级值;如进程P2有两个相关因子(TV因子和网络因子),则将第一计算单元计算的A3*M1和B2*M2的值相加得到该进程P2的优先级值。
当进程Pi包括多个相关因子时,第二计算单元23计算该进程Pi的优先级值为:Y=M1*Ax+M2*Bx+M3*Cx+……+Mn*Nx,其中:Y表示进程Pi的优先级值、n表示相关因子的个数、x表示相关因子对应的相关度等级。
参照图6,图6为本发明的进程管理装置的计算模块的另一实施例的具体结构示意图,该预设的对照表还包括相关因子对应的权重,该对照表如上述表二所示,该计算模块20包括:
第四计算单元24,用于根据该进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;再将各相关因子的乘积值与各相关因子的所有相关度等级的相关度值的和相除,以得到各相关因子的比值;
第五计算单元25,用于将各相关因子的比值累加以得到该进程的优先级值。
该第四计算单元24根据进程的运行属性在预设的对照表中查找该运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值,如查找到进程P1的TV因子对应的权重为M1,及查找到该TV因子对应的相关度等级为二级时的相关度值为A2;如查找到进程P2的TV因子对应的权重为M1和网络因子对应的权重为M2,及查找到该TV因子对应的相关度等级为三级时的相关度值为A3、网络因子对应的相关度等级为二级时的相关度值为B2;将相关度值A2与权重M1相乘,以得到进程P1的TV因子的乘积值;将相关度值A3与权重M1相乘,以得到进程P2的TV因子的乘积值;将相关度值B2与权重M2相乘,以得到进程P2的网络因子的乘积值。
当进程Pi包括多个相关因子时,则该第四计算单元24分别获取各相关因子对应的权重和各相关因子对应的相关度等级的相关度值,如各相关因子对应的权重分别为M1、M2、M3……Mn(其中n表示相关因子的个数),各相关因子对应的相关度等级的相关度值分别为:Ax、Bx、Cx……Nx(其中x表示相关因子对应的相关度等级,如x为1、2、3或0,);该进程Pi的各相关因子的乘积值为:M1*Ax、M2*Bx、M3*Cx……Mn*Nx。
该第四计算单元24将各相关因子的乘积值与各相关因子的所有相关度等级的相关度值的和相除,以得到各相关因子的比值,如对进程P1的各相关因子的比值的计算:TV因子的比值为A2*M1/(A1+A2+A3+A0),其中A1、A2、A3、A0表示TV因子的4个相关度等级的相关度值;如对进程P2的各相关因子的比值计算:TV因子的比值为A3*M1/(A1+A2+A3+A0),其中A1、A2、A3、A0表示TV因子的4个相关度等级的相关度值,网络因子的比值为B2*M2/(B1+B2+B3+B4),其中B1、B2、B3、B4表示网络因子的4个相关度等级的相关度值。
该第五计算单元25将同一进程的所有相关因子的比值累加,以得到该进程的优先级值,如进程P1只有一个相关因子(TV因子),则在第四计算单元24计算的A2*M1/(A1+A2+A3+A0)即为该进程P1的优先级值;如进程P2有两个相关因子(TV因子和网络因子),则将第四计算单元24计算的A3*M1/(A1+A2+A3+A0)和B2*M2/(B1+B2+B3+B4)的值相加得到该进程P2的优先级值。
当进程Pi包括多个相关因子时,该第五计算单元25计算该进程Pi的优先级值为:Y=M1*Ax/(A1+A2+A3+A0)+M2*Bx/(B1+B2+B3+B0)+M3*Cx/(C1+C2+C3+C0)+……+Mn*Nx/(N1+N2+N3+N0),其中:Y表示进程Pi的优先级值、n表示相关因子的个数、x表示相关因子对应的相关度等级。
优选地,该第五计算单元25可将各相关因子的比值乘以100后再累加以得到该进程的优先级值,如进程P1的优先级值为100*A2*M1/(A1+A2+A3+A0),进程P2的优先级值为100*A3*M1/(A1+A2+A3+A0)+100*B2*M2/(B1+B2+B3+B4),进程Pi的优先级值为100*M1*Ax/(A1+A2+A3+A0)+100*M2*Bx/(B1+B2+B3+B0)+100*M3*Cx/(C1+C2+C3+C0)+……+100*Mn*Nx/(N1+N2+N3+N0)。在第五计算单元25中将各相关因子的比值乘以100可使得最后得到的各进程的优先级值在1-100之间,可使得计算出的各进程的优先级值更加直观。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围。
Claims (10)
1.一种进程管理方法,其特征在于,该方法包括:
检测***中的至少一个进程的运行属性,所述运行属性包括所述进程在运行过程涉及的至少一种所述进程的相关因子以及所述相关因子与本***内其它进程和/或第三方服务器的相关度等级,所述相关因子包括所述进程实现功能,所述相关度等级为所述进程与本***其它进程的关联性强弱和/或与第三方服务器的依赖性强弱;
根据所述进程的运行属性和预设的对照表计算所述进程的优先级值,所述对照表包括相关因子及相关因子对应的相关度等级的相关度值;
当***的剩余内存空间小于预设的内存阀值时,关闭优先级值大于预设优先级关闭值的进程,以使所述***的剩余内存空间大于预设的内存阀值。
2.根据权利要求1所述的方法,其特征在于,所述根据所述进程的运行属性和预设的对照表计算所述进程的优先级值的步骤包括:
根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的相关度等级的相关度值,并将查找的各相关度值累加以得到所述进程的优先级值。
3.根据权利要求1所述的方法,其特征在于,所述预设的对照表还包括相关因子对应的权重。
4.根据权利要求3所述的方法,其特征在于,所述根据所述进程的运行属性和预设的对照表计算所述进程的优先级值的步骤包括:
根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;将各相关因子的乘积值累加以得到所述进程的优先级值。
5.根据权利要求3所述的方法,其特征在于,所述根据所述进程的运行属性和预设的对照表计算所述进程的优先级值的步骤包括:
根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;再将各相关因子的乘积值与各相关因子的所有相关度等级的相关度值的和相除,以得到各相关因子的比值;
将各相关因子的比值累加以得到所述进程的优先级值。
6.一种进程管理装置,其特征在于,包括:检测模块,与所述检测模块连接的计算模块,与所述计算模块连接的回收模块;其中:
该检测模块用于检测***中的至少一个进程的运行属性,所述运行属性包括所述进程在运行过程涉及的至少一种所述进程的相关因子以及所述相关因子与本***内其它进程和/或第三方服务器的相关度等级,所述相关因子包括所述进程实现功能,所述相关度等级为所述进程与本***其它进程的关联性强弱和/或与第三方服务器的依赖性强弱;
该计算模块用于根据所述进程的运行属性和预设的对照表计算所述进程的优先级值,所述对照表包括相关因子及相关因子对应的相关度等级的相关度值;
该回收模块用于当***的剩余内存空间小于预设的内存阀值时,关闭优先级值大于预设优先级关闭值的进程,以使所述***的剩余内存空间大于预设的内存阀值。
7.根据权利要求6所述的装置,其特征在于,所述计算模块包括第一计算单元,所述第一计算单元用于根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的相关度等级的相关度值,并将查找的各相关度值累加以得到所述进程的优先级值。
8.根据权利要求6所述的装置,其特征在于,所述预设的对照表还包括相关因子对应的权重。
9.根据权利要求8所述的装置,其特征在于,所述计算模块包括:
第二计算单元,根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;
第三计算单元,用于将各相关因子的乘积值累加以得到所述进程的优先级值。
10.根据权利要求8所述的装置,其特征在于,所述计算模块包括:
第四计算单元,用于根据所述进程的运行属性在预设的对照表中查找所述运行属性中各相关因子对应的权重和各相关因子对应的相关度等级的相关度值以得到各相关因子的乘积值;再将各相关因子的乘积值与各相关因子的所有相关度等级的相关度值的和相除,以得到各相关因子的比值;
第五计算单元,用于将各相关因子的比值累加以得到所述进程的优先级值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310460349.9A CN103500121A (zh) | 2013-09-29 | 2013-09-29 | 一种进程管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310460349.9A CN103500121A (zh) | 2013-09-29 | 2013-09-29 | 一种进程管理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103500121A true CN103500121A (zh) | 2014-01-08 |
Family
ID=49865336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310460349.9A Pending CN103500121A (zh) | 2013-09-29 | 2013-09-29 | 一种进程管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103500121A (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970596A (zh) * | 2014-03-17 | 2014-08-06 | 珠海市君天电子科技有限公司 | 一种进程管理方法及终端 |
CN105094967A (zh) * | 2015-06-26 | 2015-11-25 | 小米科技有限责任公司 | 进程运行方法及装置 |
CN105740071A (zh) * | 2016-03-17 | 2016-07-06 | 深圳市九洲电器有限公司 | 一种安卓***运行速度管理方法及*** |
CN107003902A (zh) * | 2015-04-14 | 2017-08-01 | 华为技术有限公司 | 一种进程管理的方法、装置和设备 |
WO2017185263A1 (zh) * | 2016-04-27 | 2017-11-02 | 华为技术有限公司 | 一种内存回收方法及装置 |
CN107463403A (zh) * | 2017-07-31 | 2017-12-12 | 广东欧珀移动通信有限公司 | 进程控制方法、装置、存储介质以及电子设备 |
CN107463437A (zh) * | 2017-07-31 | 2017-12-12 | 广东欧珀移动通信有限公司 | 应用管控方法、装置、存储介质及电子设备 |
CN108052388A (zh) * | 2017-11-24 | 2018-05-18 | 武汉斗鱼网络科技有限公司 | 一种Android中内存回收方法及装置 |
CN108829499A (zh) * | 2018-04-29 | 2018-11-16 | 郑州易通众联电子科技有限公司 | 电子设备的管理方法及管理装置 |
CN108984212A (zh) * | 2017-05-31 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 一种关闭进程的方法以及电子设备 |
CN109144699A (zh) * | 2018-08-31 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 分布式任务调度方法、装置及*** |
CN109947571A (zh) * | 2019-03-22 | 2019-06-28 | 北京奇艺世纪科技有限公司 | 一种内存释放方法及*** |
WO2019137258A1 (zh) * | 2018-01-10 | 2019-07-18 | Oppo广东移动通信有限公司 | 内存处理方法、电子设备及计算机可读存储介质 |
CN110083452A (zh) * | 2019-04-26 | 2019-08-02 | 深信服科技股份有限公司 | 一种资源管理方法、***及电子设备和存储介质 |
CN110096347A (zh) * | 2019-03-29 | 2019-08-06 | 努比亚技术有限公司 | 一种进程后台管理方法、终端及计算机可读存储介质 |
CN112231016A (zh) * | 2020-10-27 | 2021-01-15 | 山东云缦智能科技有限公司 | 基于应用启动频率的Android进程管理机制处理方法 |
CN116185644A (zh) * | 2023-04-26 | 2023-05-30 | 阿里云计算有限公司 | 内存回收控制方法、存储介质、处理器及终端设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102736953A (zh) * | 2011-04-08 | 2012-10-17 | 腾讯科技(深圳)有限公司 | 一种***资源配置方法和设备 |
US20120324481A1 (en) * | 2011-06-16 | 2012-12-20 | Samsung Electronics Co. Ltd. | Adaptive termination and pre-launching policy for improving application startup time |
CN103024538A (zh) * | 2012-11-12 | 2013-04-03 | 北京奇虎科技有限公司 | 内存管理方法及*** |
CN103092689A (zh) * | 2013-01-10 | 2013-05-08 | 深圳市金立通信设备有限公司 | 一种进程管理的方法及终端 |
CN103324536A (zh) * | 2012-03-23 | 2013-09-25 | 宇龙计算机通信科技(深圳)有限公司 | 终端和应用程序保护方法 |
-
2013
- 2013-09-29 CN CN201310460349.9A patent/CN103500121A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102736953A (zh) * | 2011-04-08 | 2012-10-17 | 腾讯科技(深圳)有限公司 | 一种***资源配置方法和设备 |
US20120324481A1 (en) * | 2011-06-16 | 2012-12-20 | Samsung Electronics Co. Ltd. | Adaptive termination and pre-launching policy for improving application startup time |
CN103324536A (zh) * | 2012-03-23 | 2013-09-25 | 宇龙计算机通信科技(深圳)有限公司 | 终端和应用程序保护方法 |
CN103024538A (zh) * | 2012-11-12 | 2013-04-03 | 北京奇虎科技有限公司 | 内存管理方法及*** |
CN103092689A (zh) * | 2013-01-10 | 2013-05-08 | 深圳市金立通信设备有限公司 | 一种进程管理的方法及终端 |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970596B (zh) * | 2014-03-17 | 2017-08-04 | 珠海市君天电子科技有限公司 | 一种进程管理方法及终端 |
CN103970596A (zh) * | 2014-03-17 | 2014-08-06 | 珠海市君天电子科技有限公司 | 一种进程管理方法及终端 |
CN107003902A (zh) * | 2015-04-14 | 2017-08-01 | 华为技术有限公司 | 一种进程管理的方法、装置和设备 |
CN107003902B (zh) * | 2015-04-14 | 2021-01-01 | 华为技术有限公司 | 一种进程管理的方法、装置和设备 |
US10514950B2 (en) | 2015-04-14 | 2019-12-24 | Huawei Technologies Co., Ltd. | Interface switching method, apparatus, and device |
CN105094967B (zh) * | 2015-06-26 | 2019-04-16 | 小米科技有限责任公司 | 进程运行方法及装置 |
CN105094967A (zh) * | 2015-06-26 | 2015-11-25 | 小米科技有限责任公司 | 进程运行方法及装置 |
CN105740071A (zh) * | 2016-03-17 | 2016-07-06 | 深圳市九洲电器有限公司 | 一种安卓***运行速度管理方法及*** |
CN105740071B (zh) * | 2016-03-17 | 2018-12-04 | 深圳市九洲电器有限公司 | 一种安卓***运行速度管理方法及*** |
WO2017185263A1 (zh) * | 2016-04-27 | 2017-11-02 | 华为技术有限公司 | 一种内存回收方法及装置 |
US10901890B2 (en) | 2016-04-27 | 2021-01-26 | Huawei Technologies Co., Ltd. | Memory reclaiming method and apparatus |
CN107912063A (zh) * | 2016-04-27 | 2018-04-13 | 华为技术有限公司 | 一种内存回收方法及装置 |
CN108984212A (zh) * | 2017-05-31 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 一种关闭进程的方法以及电子设备 |
CN107463403A (zh) * | 2017-07-31 | 2017-12-12 | 广东欧珀移动通信有限公司 | 进程控制方法、装置、存储介质以及电子设备 |
CN107463437B (zh) * | 2017-07-31 | 2020-01-31 | Oppo广东移动通信有限公司 | 应用管控方法、装置、存储介质及电子设备 |
CN107463437A (zh) * | 2017-07-31 | 2017-12-12 | 广东欧珀移动通信有限公司 | 应用管控方法、装置、存储介质及电子设备 |
WO2019024642A1 (zh) * | 2017-07-31 | 2019-02-07 | Oppo广东移动通信有限公司 | 进程控制方法、装置、存储介质以及电子设备 |
CN107463403B (zh) * | 2017-07-31 | 2020-04-21 | Oppo广东移动通信有限公司 | 进程控制方法、装置、存储介质以及电子设备 |
CN108052388A (zh) * | 2017-11-24 | 2018-05-18 | 武汉斗鱼网络科技有限公司 | 一种Android中内存回收方法及装置 |
WO2019137258A1 (zh) * | 2018-01-10 | 2019-07-18 | Oppo广东移动通信有限公司 | 内存处理方法、电子设备及计算机可读存储介质 |
CN108829499A (zh) * | 2018-04-29 | 2018-11-16 | 郑州易通众联电子科技有限公司 | 电子设备的管理方法及管理装置 |
CN109144699A (zh) * | 2018-08-31 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 分布式任务调度方法、装置及*** |
CN109947571A (zh) * | 2019-03-22 | 2019-06-28 | 北京奇艺世纪科技有限公司 | 一种内存释放方法及*** |
CN110096347A (zh) * | 2019-03-29 | 2019-08-06 | 努比亚技术有限公司 | 一种进程后台管理方法、终端及计算机可读存储介质 |
CN110083452A (zh) * | 2019-04-26 | 2019-08-02 | 深信服科技股份有限公司 | 一种资源管理方法、***及电子设备和存储介质 |
CN112231016A (zh) * | 2020-10-27 | 2021-01-15 | 山东云缦智能科技有限公司 | 基于应用启动频率的Android进程管理机制处理方法 |
CN116185644A (zh) * | 2023-04-26 | 2023-05-30 | 阿里云计算有限公司 | 内存回收控制方法、存储介质、处理器及终端设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103500121A (zh) | 一种进程管理方法及装置 | |
CN105261366B (zh) | 语音识别方法、语音引擎及终端 | |
CN106713083B (zh) | 基于知识图谱的智能家居设备控制方法、装置及*** | |
CN110536342A (zh) | 一种网络模式控制方法及终端、存储介质 | |
CN101908022A (zh) | 一种用于移动通讯设备终端的内存管理方法及其装置 | |
CN103096434A (zh) | 终端小区搜索的方法 | |
CN105976048A (zh) | 一种基于改进人工蜂群算法的输电网扩展规划方法 | |
CN103763433A (zh) | 终端应用的运行控制方法及*** | |
CN105848188B (zh) | 一种无线网络接入方法、***及设备 | |
CN104350784A (zh) | 一种终端搜网方法及终端 | |
CN108983946A (zh) | 一种服务器功耗控制方法、***及设备 | |
CN114462577A (zh) | 一种联邦学习***、方法、计算机设备及存储介质 | |
CN104703256A (zh) | 一种移动终端动态连接快速ap的方法及*** | |
CN105825833A (zh) | 一种亮度调整方法及终端 | |
CN102609229B (zh) | 一种嵌入式多窗口应用图形并行更新方法 | |
CN103577564A (zh) | 通过软件搬移降低hash冲突的方法及装置 | |
CN104063224A (zh) | 基于三维gis切换多个精细化控制场景的方法及装置 | |
CN103634032A (zh) | 数据转移方法、***及移动终端 | |
CN103327504A (zh) | 一种认知无线电网络中频谱感知间隔的决策方法 | |
CN105516476A (zh) | 一种关闭高能耗应用来控制应用节电的方法 | |
CN105516477A (zh) | 一种基于应用频率来节电的方法 | |
CN105517133A (zh) | 一种调节终端背光的节电方法 | |
CN103596045B (zh) | 一种用于视频码流播放终端设备的节能控制方法 | |
CN104615683A (zh) | 一种具有高可扩展性的时间及位置感知的协同过滤技术 | |
CN109633329B (zh) | 多回路储能设备的故障检测方法、装置、终端设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140108 |
|
RJ01 | Rejection of invention patent application after publication |