CN102546946B - 移动终端处理任务的方法及装置 - Google Patents
移动终端处理任务的方法及装置 Download PDFInfo
- Publication number
- CN102546946B CN102546946B CN201210002121.0A CN201210002121A CN102546946B CN 102546946 B CN102546946 B CN 102546946B CN 201210002121 A CN201210002121 A CN 201210002121A CN 102546946 B CN102546946 B CN 102546946B
- Authority
- CN
- China
- Prior art keywords
- subtask
- processing unit
- central processing
- pending
- current residual
- 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.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims abstract description 214
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000005194 fractionation Methods 0.000 claims description 47
- 239000000284 extract Substances 0.000 claims description 31
- 238000000605 extraction Methods 0.000 claims description 6
- 230000013011 mating Effects 0.000 claims description 6
- 238000012546 transfer Methods 0.000 claims description 3
- GNFTZDOKVXKIBK-UHFFFAOYSA-N 3-(2-methoxyethoxy)benzohydrazide Chemical compound COCCOC1=CC=CC(C(=O)NN)=C1 GNFTZDOKVXKIBK-UHFFFAOYSA-N 0.000 claims description 2
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Abstract
本发明公开了一种移动终端处理任务的方法及装置,方法包括:当识别到新任务时,按照预设的判断规则判断新任务是否能拆分;当判断出新任务能拆分时,按照预设的拆分规则将新任务拆分成多个子任务;获取移动终端中的主中央处理器和辅中央处理器各自的当前剩余资源比例;根据主中央处理器的当前剩余资源比例、辅中央处理器的当前剩余资源比例、各子任务的第一平衡因子和第二平衡因子,为各子任务在主中央处理器和辅中央处理器中分配资源。根据本发明的移动终端处理任务的方法及装置,能够尽量减少两个中央处理器中的一个经常性地负荷过重而另外一个却经常处于空闲的情况。
Description
技术领域
本发明涉及移动终端通信技术领域,尤其涉及一种移动终端处理任务的方法及装置。
背景技术
随着移动手机的普遍应用,用户越来越依赖于手机处理各项事务。除了基本的通话和短信功能,还会用到计算器、游戏以及查找地图等。这就为手机带来了极大的负担。手机在处理多个任务时,很有可能导致手机死机。
现有技术中已经出现了采用两个中央处理器的手机。但是现有技术并不能为这两个中央处理器很好的分配所要处理的任务,通常是一个中央处理器的任务过重,而另一个中央处理器却处于空闲状态。中央处理器如果经常承载大负荷的运行任务,会缩短其使用寿命。
发明内容
本发明提供一种移动终端处理任务的方法及装置,用于尽量减少两个中央处理器中的一个经常性地负荷过重而另外一个却经常处于空闲的情况。
本发明一方面提供一种移动终端处理任务的方法,包括:
当识别到新任务时,按照预设的判断规则判断所述新任务是否能拆分;
当判断出所述新任务能拆分时,按照预设的拆分规则将所述新任务拆分成多个子任务;
获取移动终端中的主中央处理器和辅中央处理器各自的当前剩余资源比例;
根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源;
其中,所述第一平衡因子为所述子任务占用所述主中央处理器的预设比例,所述第二平衡因子为所述子任务占用所述辅中央处理器的预设比例。
如上所述的移动终端处理任务的方法,优选地,所述识别到新任务包括:
当接收到新任务触发输入时即确定为识别到新任务;或
当根据输入指令建立新任务线程时即确定为识别到新任务。
如上所述的移动终端处理任务的方法,优选地,所述按照预设判断规则判断所述新任务是否能拆分包括:
将所述新任务的标识在预设判断规则中存储的标识中进行匹配,当匹配到一致的标识时,确定所述新任务能拆分;或者
将所述新任务的第一平衡因子与预设的第一拆分阈值进行比较,以及将所述新任务的第二平衡因子与预设的第二拆分阈值进行比较,当第一平衡因子大于第一拆分阈值或者第二平衡因子大于第二拆分阈值时,确定所述新任务能拆分。
如上所述的移动终端处理任务的方法,优选地,按照预设的拆分规则将所述新任务拆分成多个子任务包括:
按照预设的拆分规则将新任务拆分为具有执行顺序的顺序子任务和不具有执行顺序的随意子任务。
如上所述的移动终端处理任务的方法,优选地,所述根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源包括:
a:将各顺序子任务和各随意子任务按照类型加入优先级不同的队列,由所述顺序子任务组成的各队列为顺序子任务队列,由所述随意子任务组成的队列为随意子任务队列;
b:比较并选择当前剩余资源比例较大的一个中央处理器,设定该中央处理器为待执行中央处理器;
c:从优先级最高的队列中提取优先级最高子任务作为待处理子任务;
d:比较所述待执行中央处理器的当前剩余资源比例是否大于待处理子任务相应于该中央处理器的占用比例,若是,则将所述待处理子任务分配给所述待执行中央处理器,并返回执行步骤b,否则,转为步骤e;
e:判断所提取的子任务的队列是否为顺序子任务队列,若是,则从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并返回执行步骤d,否则,执行步骤f;
f:将与该待处理子任务相邻的子任务更新为待处理子任务,返回执行步骤d,直至该队列中没有待处理子任务的平衡因子小于所述待执行中央处理器的当前剩余资源比例,执行步骤g;
g:从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并返回执行步骤d。
如上所述的移动终端处理任务的方法,优选地,所述根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源包括:
根据所述主中央处理器的当前剩余资源比例和所述辅中央处理器的当前剩余资源比例获取分配比例,所述分配比例为所述主中央处理器的当前剩余资源比例/(所述辅中央处理器的当前剩余资源比例加上所述主中央处理器的当前剩余资源比例);
根据分配比例分成第一子任务堆和第二子任务堆,第一子任务堆所包含的子任务的个数=所有子任务的个数乘以分配比例的积的整数部分,第二子任务堆所包含的子任务的个数=所有子任务的个数减去第一子任务堆所包含的子任务的个数;
将所述第一子任务堆分配给所述主中央处理器处理,将所述第二子任务堆分配给所述辅中央处理器处理。
如上所述的移动终端处理任务的方法,优选地,还包括:
每隔预设时间,重复执行根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源的步骤。
本发明另一方面提供一种移动终端处理任务的装置,包括:
判断模块,用于当识别到新任务时,按照预设的判断规则判断所述新任务是否能拆分;
拆分模块,用于当判断出所述新任务能拆分时,按照预设的拆分规则将所述新任务拆分成多个子任务;
获取模块,用于获取移动终端中的主中央处理器和辅中央处理器各自的当前剩余资源比例;
分配模块,用于根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源;
其中,所述第一平衡因子为所述子任务占用所述主中央处理器的预设比例,所述第二平衡因子为所述子任务占用所述辅中央处理器的预设比例。如上所述的移动终端处理任务的装置,优选地,所述判断模块具体用于将所述新任务的标识在预设判断规则中存储的标识中进行匹配,当匹配到一致的标识时,确定所述新任务能拆分。
如上所述的移动终端处理任务的装置,优选地,所述判断模块具体用于将所述新任务的第一平衡因子与预设的第一拆分阈值进行比较,以及将所述新任务的第二平衡因子与预设的第二拆分阈值进行比较,当第一平衡因子大于第一拆分阈值或者第二平衡因子大于第二拆分阈值时,确定所述新任务能拆分。
如上所述的移动终端处理任务的装置,优选地,所述拆分模块具体用于按照预设的拆分规则将新任务拆分为具有执行顺序的顺序子任务和不具有执行顺序的随意子任务。
如上所述的移动终端处理任务的装置,优选地,所述分配模块包括:
分队列子模块,用于将各顺序子任务和各随意子任务按照类型加入优先级不同的队列,由所述顺序子任务组成的各队列为顺序子任务队列,由所述随意子任务组成的队列为随意子任务队列;
第一比较子模块,用于比较并选择当前剩余资源比例较大的一个中央处理器,设定该中央处理器为待执行中央处理器;
第一提取子模块,用于从优先级最高的队列中提取优先级最高的子任务作为待处理子任务;
第二比较子模块,用于比较所述待执行中央处理器的当前剩余资源比例是否大于待处理子任务相应于该中央处理器的占用比例,若是,则将所述待处理子任务分配给所述待执行中央处理器,否则,触发判断子任务队列子模块;
所述判断子任务队列子模块,用于判断所提取的子任务的队列是否为顺序子任务队列,若是,触发第二提取子模块,否则,触发第三提取子模块;
所述第二提取子模块,用于从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并将该待处理子任务发送给所述第二比较子模块;
所述第三提取子模块,用于将与该待处理子任务相邻的子任务更新为待处理子任务,并将该待处理子任务发送给所述第二比较子模块,当该队列中没有待处理子任务的平衡因子小于所述待执行中央处理器的当前剩余资源比例时,触发第四提取子模块;
第四提取子模块,用于从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并将该待处理子任务发送给所述第二比较子模块。
如上所述的移动终端处理任务的装置,优选地,所述分配模块包括:
获取分配比例子模块,用于根据所述主中央处理器的当前剩余资源比例和所述辅中央处理器的当前剩余资源比例获取分配比例,所述分配比例为所述主中央处理器的当前剩余资源比例/(所述辅中央处理器的当前剩余资源比例加上所述主中央处理器的当前剩余资源比例);
所述分堆子模块,用于根据分配比例分成第一子任务堆和第二子任务堆,第一子任务堆所包含的子任务的个数=所有子任务的个数乘以分配比例的积的整数部分,第二子任务堆所包含的子任务的个数=所有子任务的个数减去第一子任务堆所包含的子任务的个数;
分配子任务子模块,用于将所述第一子任务堆分配给所述主中央处理器处理,将所述第二子任务堆分配给所述辅中央处理器处理。
如上所述的移动终端处理任务的装置,优选地,还包括:
重新分配子模块,用于每隔预设时间,触发所述分配模块
根据本发明的移动终端处理任务的方法及装置,通过将新任务拆分为多个子任务,并分别分配给主中央处理器和辅中央处理器进行处理,能够尽量减少两个中央处理器中的一个经常性地负荷过重而另外一个却经常处于空闲的情况。
附图说明
图1为根据本发明一实施例的移动终端处理任务的方法流程图;
图2为根据本发明另一实施例的移动终端处理任务的装置的结构示意图;
图3为根据本发明又一实施例的移动终端处理任务的装置的结构示意图;
图4为根据本发明再一实施例的移动终端处理任务的装置的结构示意图。
具体实施方式
实施例一
本实施例提供一种移动终端处理任务的方法。该方法适用于具有主中央处理器和辅中央处理器的双核移动终端,通过动态为主中央处理器和辅中央处理器分配任务,以避免其中一个中央处理器被过度使用。这里的主中央处理器和辅中央处理器的大小、处理速度可以按照实际需要设定为相同或者不同。
如图1所示,为根据本实施例的移动终端处理任务的方法流程示意图。
步骤101,当识别到新任务时,按照预设的判断规则判断新任务是否能拆分。
具体地,该步骤101中的识别到新任务包括:
当接收到新任务触发输入时即确定为识别到新任务;或
当根据输入指令建立新任务线程时即确定为识别到新任务。
当然,上述识别到新任务的方法还可以包括现有技术中的其它方式,只要是能够识别到该新任务即可,在此不再赘述。
具体地,该步骤101中的按照预设判断规则判断新任务是否能拆分,包括:
将新任务的标识在预设判断规则中存储的标识中进行匹配,当匹配到一致的标识时,即确定新任务能拆分;或者
将新任务的第一平衡因子与预设的第一拆分阈值进行比较,以及将新任务的第二平衡因子与预设的第二拆分阈值进行比较,当第一平衡因子大于第一拆分阈值或者第二平衡因子大于第二拆分阈值时,确定新任务能拆分。
其中,第一平衡因子为子任务占用主中央处理器的预设比例,第二平衡因子为子任务占用辅中央处理器的预设比例。
具体举例来说,这里预设的判断规则可以为,预先设定一个第一拆分阈值K和第二拆分阈值M,当新任务的第一平衡因子大于K值时或当该新任务的第二平衡因子大于M值时,则该新任务能拆分。具体举例为,特别复杂的一个数据计算,其第一平衡因子即占用主中央处理器的比例为2%,而预设的K值为1.9%,则判断该新任务可以拆分。
上述预设的判断规则还可以包括其它的判断规则,可以根据实际需要进行设定,在此不再赘述。
步骤102,当判断出新任务能拆分时,按照预设的拆分规则将新任务拆分成多个子任务。
这里的拆分规则可以是根据客户的需要任意设定的。例如,为每个新任务设置固定的拆分方法。假设对于数据计算1+2+3+...+100而言,将前50个数据拆分为一个子任务,将后50个数据拆分为1个子任务。
当然,还可以根据实际需要,设定拆分规则列表,对于每一种任务都可以预先设定多种拆分方法。当有多种拆分方法,可以根据主中央处理器和辅中央处理器各自的当前使用资源比例选择一种较优的拆分方法。
步骤103,获取移动终端中的主中央处理器和辅中央处理器各自的当前剩余资源比例。
这里的当前剩余资源比例,可以通过直接对主中央处理器和辅中央处理器进行检测而获知。具体地,当接收到新任务时,通过检测主中央处理器和辅中央处理器的各自的当前使用资源比例来获取各自的当前剩余资源比例。
当前剩余资源比例=1-当前使用资源比例
当然,获取当前剩余资源比例还可以包括其它方式,在此不再赘述。
步骤104,根据主中央处理器的当前剩余资源比例、辅中央处理器的当前剩余资源比例、各子任务的第一平衡因子和第二平衡因子,为各子任务在主中央处理器和辅中央处理器中分配资源。
根据本实施例的移动终端处理的方法,通过将新任务拆分成多个子任务并分配给各中央处理器,相当于同时采用主中央处理器和辅中央处理器同时处理该新任务,这样,不仅能够提高处理该新任务的效率,而且能够将主中央处理器和辅中央处理器同时利用起来,以避免其中一个中央处理器经常性地负担过重而造成该中央处理器寿命的缩短。
实施例二
本实施例二对实施例一的移动终端处理任务的方法做进一步限定。
本实施例中,按照预设的拆分规则将所述新任务拆分成多个子任务包括:
按照预设的拆分规则将新任务拆分为具有执行顺序的顺序子任务和不具有执行顺序的随意子任务。
顺序子任务指的是其它某些子任务执行完毕之后才能执行的子任务,和/或需要其执行完毕之后其它某些子任务才能执行的子任务。随意子任务指的是与其它子任务是否执行或者能够执行没有任何关联的子任务。当然,对子任务的分类并不限于以上两种。另外,用户可以根据实际需要,将优先级队列分为多个,例如3个、4个等。每个队列中均可包含多个子任务。
可选地,顺序子任务的优先级高于随意子任务,随意子任务中也可以按照优先级高低的顺序进行排列。
这样,当存在顺序子任务和随意子任务时,根据主中央处理器的当前剩余资源比例、辅中央处理器的当前剩余资源比例、各子任务的第一平衡因子和第二平衡因子,为各子任务在主中央处理器和辅中央处理器中分配资源包括:
步骤1041,将各顺序子任务和各随意子任务按照类型加入优先级不同的队列,由顺序子任务组成的各队列为顺序子任务队列,由随意子任务组成的队列为随意子任务队列。
具体地,顺序子任务队列可以有多个,随意子任务队列可以只有一个,也可以有多个。每个顺序子任务队列中,各子任务相互关联,即具有执行顺序。一般的,同一个任务中的顺序子任务队列的优先级高于随意子任务队列。当然,各顺序子任务队列也可以按照预设规则设定优先级。
步骤1042,比较并选择当前剩余资源比例较大的一个中央处理器,设定该中央处理器为待执行中央处理器。
选择当前剩余资源比例较大的一个中央处理器,即是选择了主中央处理器和辅中央处理器中较为空闲的一个,这样,可以尽量保持两个中央处理器被使用的当前资源比例相近,即可以尽量避免其中一个中央处理器的负担过重。
步骤1043,从优先级最高的队列中提取优先级最高子任务作为待处理子任务。
优先级最高的队列,即为优先处理的子任务队列。一般情况下,各队列中的子任务可以按照优先级从高到低的顺序进行排列,这样就首先将排在该队列中的第一个选取出来先作为待处理子任务。
步骤1044,比较所述待执行中央处理器的当前剩余资源比例是否大于待处理子任务相应于该中央处理器的平衡因子,若是,则将所述待处理子任务分配给所述待执行中央处理器,并返回执行步骤1042,否则,转为步骤1045。
步骤1045,判断所提取的子任务的队列是否为顺序子任务队列,若是,则从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并返回执行步骤1044,否则,执行步骤1046。
步骤1046,将与该待处理子任务相邻的子任务更新为待处理子任务,返回执行步骤1044,直至该队列中没有待处理子任务的平衡因子小于所述待执行中央处理器的当前剩余资源比例,执行步骤1047。
步骤1047,从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并返回执行步骤1044。
本实施例中,按照预设的拆分规则将子任务分成多个队列,并将队列按照优先级的次序排列好,每个队列中也可以按照预设的排列规则,例如按照优先级从高到低的顺序进行排列,以使得优先级较高的子任务能够优先得到处理。这样,通过采用合理的处理方式,将子任务合理分配到两个中央处理器中进行处理,不仅能够避免过度使用其中一个中央处理器造成该处理器的损坏,还能够加快新任务的处理速度,还能够减少死机的情况。
假设只有优先级较高的顺序子任务队列和优先级较低的随意子任务队列,待执行中央处理器为主中央处理器。首先选择顺序子任务队列中的第一顺序子任务,如果发现该第一顺序子任务的第一平衡因子大于主中央处理器的当前剩余资源比例,则选择第二顺序子任务的第一平衡因子进行比较,如果发现第二顺序子任务的第一平衡因子小于主中央处理器的当前剩余资源比例,则采用该主中央处理器执行第二顺序子任务。
实施例三
本实施例对实施例一的移动终端处理方法做进一步限定。
本实施例对步骤104做进一步限定,其它的步骤均与实施例一一致,在此不再赘述。
本实施例的根据主中央处理器的当前剩余资源比例、辅中央处理器的当前剩余资源比例、各子任务的第一平衡因子和第二平衡因子,为各子任务在主中央处理器和辅中央处理器中分配资源包括:
步骤301,根据主中央处理器的当前剩余资源比例和辅中央处理器的当前剩余资源比例获取分配比例,分配比例为主中央处理器的当前剩余资源比例/(所述辅中央处理器的当前剩余资源比例加上所述主中央处理器的当前剩余资源比例)。
例如,主中央处理器的当前剩余比例为a,辅中央处理器的当前剩余资源比例为b,则分配比例c=a/(a+b)。
步骤302,将各子任务按照分配比例分成第一子任务堆和第二子任务堆,第一子任务堆所包含的子任务的个数=所有子任务的个数乘以分配比例的积的整数部分,第二子任务堆所包含的子任务的个数=所有子任务的个数减去第一子任务堆所包含的子任务的个数。
例如,所有子任务的个数为d,第一子任务堆包含的子任务的个数为e,则e为d×c所得的结果的整数部分,第二子任务堆包含的子任务的个数为f,则f=d-e。
步骤303,将第一子任务堆分配给主中央处理器处理,将第二子任务堆分配给辅中央处理器处理。
具体地举例来说,主中央处理器的当前剩余资源比例为60%,辅中央处理其的当前剩余资源比例为40%,则分配比例为60%/(40%+60%)=3/5。而拆分出来的子任务一共有10个,则将子任务按照分配比例分配第一子任务堆和第二子任务堆,这样,第一子任务堆的子任务的个数是6个,而第二子任务堆的子任务的个数是4个。然后将第一子任务堆分配给主中央处理器进行处理,将第二子任务堆分配给辅中央处理器进行处理。
根据实际情况,可能还会出现拆分出的子任务不能完全按照分配比例分配第一子任务堆和第二子任务堆的情况。例如,上述的举例中拆分出的子任务不是10个而是8个,则不能完全按照分配比例3/5将这些子任务分堆。此时,可以选择与分配比例最相近的一个比例来分配。例如当子任务的个数为8个的时候,则可以使第一子任务堆的个数为8×3/5=4个,第二子任务堆的个数为8-4=4个,以使两个中央处理器的负担尽量相当。
根据上述步骤,能够使得当前负担较重的中央处理器分配较少的子任务,以尽量避免该中央处理器一直工作在负担过重的状态下。
优选地,本实施例的移动终端处理方法还包括:每隔预设时间,重复执行根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源的步骤。即重复执行上述步骤301~303。
由于不同的子任务的处理时间不同,这样就会出现某个中央处理器即使被分配的子任务的个数较少,但是每个子任务的工作时间长,对于该中央处理器来说还是会负担过重。这样,每隔预设时间,获取各中央处理器的当前剩余资源比例,再将未处理的子任务重新在主中央处理器和辅中央处理器中分配资源,从而达到动态的调节各中央处理器的负荷的目的,以尽量保证某个中央处理器不会一直处于负担过重的工作状态下而缩短使用寿命。
实施例四
本实施例提供一种移动终端处理任务的装置。如图2所示,为根据本实施例的移动终端处理任务的装置的结构示意图。
该移动终端处理任务的装置包括判断模块201、拆分模块202、获取模块203和分配模块204。
其中,判断模块201用于当识别到新任务时,按照预设的判断规则判断新任务是否能拆分;拆分模块202与判断模块201连接,用于当判断出新任务能拆分时,按照预设的拆分规则将新任务拆分成多个子任务;获取模块203用于获取移动终端中的主中央处理器和辅中央处理器各自的当前剩余资源比例;分配模块204分别与拆分模块202和获取模块203连接,用于根据主中央处理器的当前剩余资源比例、辅中央处理器的当前剩余资源比例、各子任务的第一平衡因子和第二平衡因子,为各子任务在主中央处理器和辅中央处理器中分配资源;
其中,第一平衡因子为子任务占用主中央处理器的预设比例,第二平衡因子为子任务占用辅中央处理器的预设比例。
可选地,上述判断模块201具体用于将新任务的标识在预设判断规则中存储的标识中进行匹配,当匹配到一致的标识时,确定新任务能拆分。或者,上述判断模块201具体用于将新任务的第一平衡因子与预设的第一拆分阈值进行比较,以及将新任务的第二平衡因子与预设的第二拆分阈值进行比较,当第一平衡因子大于第一拆分阈值或者第二平衡因子大于第二拆分阈值时,确定新任务能拆分。
根据本实施例的移动终端处理的装置,首先通过判断模块201判断新任务是否能拆分,当新任务能拆分时,通过拆分模块202将新任务拆分成多个子任务并通过分配模块204分配给各中央处理器,相当于同时采用主中央处理器和辅中央处理器同时处理该新任务,这样,不仅能够提高处理该新任务的效率,而且能够将主中央处理器和辅中央处理器同时利用起来,以避免其中一个中央处理器经常性地负担过重而造成该中央处理器寿命的缩短。
实施例五
本实施例对实施例四的移动终端处理任务的装置做进一步限定。
本实施例仅对分配模块204做进一步限定,其它结构均与实施例四一致,在此不再赘述。
本实施例中的拆分模块202具体用于按照预设的拆分规则将新任务拆分为具有执行顺序的顺序子任务和不具有执行顺序的随意子任务。此时,如图3所示,本实施例的移动终端处理任务的装置的分配模块204包括分队列子模块301、第一比较子模块302、第一提取子模块303、第二比较子模块304、判断子任务队列子模块305、第二提取子模块306、第三提取子模块307和第四提取子模块308。
其中,分队列子模块301与拆分模块202连接,用于将各顺序子任务和各随意子任务按照类型加入优先级不同的队列,由所述顺序子任务组成的各队列为顺序子任务队列,由所述随意子任务组成的队列为随意子任务队列;第一比较子模块302与获取模块203连接,用于比较并选择当前剩余资源比例较大的一个中央处理器,设定该中央处理器为待执行中央处理器;第一提取子模块303与分队列子模块301连接,用于从优先级最高的队列中提取优先级最高的子任务作为待处理子任务;第二比较子模块304分别与第一比较子模块302和第一提取子模块303连接,用于比较所述待执行中央处理器的当前剩余资源比例是否大于待处理子任务相应于该中央处理器的平衡因子,若是,则将所述待处理子任务分配给所述待执行中央处理器,并触发第一提取子模块303和第一比较子模块302,否则触发判断子任务队列子模块305;判断子任务队列子模块305分别与第二比较子模块304、第二提取子模块306、第三提取子模块307连接,用于判断所提取的子任务的队列是否为顺序子任务队列,若是,触发第二提取子模块306,否则,触发第三提取子模块307;第二提取子模块306分别与分队列子模块301、第二比较子模块304、判断子任务队列子模块305,用于从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并将该待处理子任务发送给所述第二比较子模块304;第三提取子模块307分别与分队列子模块301、第二比较子模块304、判断子任务队列子模块305、第四提取子模块307连接,用于将与该待处理子任务相邻的子任务更新为待处理子任务,并将该待处理子任务发送给所述第二比较子模块304,并触发第二比较模块304,当该队列中没有待处理子任务的平衡因子小于所述待执行中央处理器的当前剩余资源比例时,触发第四提取子模块308;第四提取子模块308分别与分队列子模块301、第二比较子模块304、第三提取子模块307连接,用于从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并将该待处理子任务发送给所述第二比较子模块304。
本实施例的移动终端处理任务的装置,通过分队列子模块301按照预设的拆分规则将子任务分成多个队列,并将队列按照优先级的次序排列好,每个队列中也可以按照预设的排列规则,例如按照优先级从高到低的顺序进行排列,以使得优先级较高的子任务能够优先得到处理。这样,通过采用合理的处理方式,将子任务合理分配到两个中央处理器中进行处理,不仅能够避免过度使用其中一个中央处理器造成该处理器的损坏,还能够加快新任务的处理速度,还能够减少死机的情况。
实施例六
本实施例对实施例四的移动终端处理任务的装置做进一步限定。
如图4所示,本实施例对实施例四的分配模块204做进一步限定,其它模块均与实施例四的一致,在此不再进行赘述。
本实施例的分配模块204包括:获取分配比例子模块401、分堆子模块402和分配子任务子模块403。
其中,获取分配比例子模块401与获取模块203连接,用于根据主中央处理器的当前剩余资源比例和辅中央处理器的当前剩余资源比例获取分配比例,分配比例为主中央处理器的当前剩余资源比例/(所述辅中央处理器的当前剩余资源比例加上所述主中央处理器的当前剩余资源比例);分堆子模块402分别与拆分模块202、获取分配比例子模块401、分配子任务子模块403连接,用于根据分配比例分成第一子任务堆和第二子任务堆,第一子任务堆所包含的子任务的个数=所有子任务的个数乘以分配比例的积的整数部分,第二子任务堆所包含的子任务的个数=所有子任务的个数减去第一子任务堆所包含的子任务的个数;分配子任务子模块403与分堆子模块402连接,用于将第一子任务堆分配给主中央处理器处理,将第二子任务堆分配给辅中央处理器处理。
可选地,本实施例的移动终端处理任务的装置还包括重新分配子模块405。重新分配子模块405与分配模块204连接,更为具体地与分配子任务子模块403连接,用于每隔预设时间重新触发分配模块204。即,分配模块204重新获得获取模块203的结果,并根据重新获取的主中央处理器的当前剩余资源比例、重新获取的辅中央处理器的当前剩余资源比例,为各未处理的子任务在主中央处理器和辅中央处理器中分配资源。
这是由于,不同的子任务的处理时间不同,这样就会出现某个中央处理器即使被分配的子任务的个数较少,但是每个子任务的工作时间长,对于该中央处理器来说还是会负担过重。这样,每隔预设时间,重新分配子模块405重新获取各中央处理器的当前剩余资源比例,再将未处理的子任务重新在主中央处理器和辅中央处理器中分配资源,从而达到动态的调节各中央处理器的负荷的目的,以尽量保证某个中央处理器不会一直处于负担过重的工作状态下而缩短使用寿命。
根据本实施例移动终端处理任务的装置,能够使得当前负担较重的中央处理器分配较少的子任务,以尽量避免该中央处理器一直工作在负担过重的状态下。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种移动终端处理任务的方法,其特征在于,包括:
当识别到新任务时,按照预设的判断规则判断所述新任务是否能拆分;
当判断出所述新任务能拆分时,按照预设的拆分规则将所述新任务拆分成多个子任务;
获取移动终端中的主中央处理器和辅中央处理器各自的当前剩余资源比例;
根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源;
其中,所述第一平衡因子为所述子任务占用所述主中央处理器的预设比例,所述第二平衡因子为所述子任务占用所述辅中央处理器的预设比例;
其中,所述根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源包括:
根据所述主中央处理器的当前剩余资源比例和所述辅中央处理器的当前剩余资源比例获取分配比例,所述分配比例为所述主中央处理器的当前剩余资源比例除以(所述辅中央处理器的当前剩余资源比例加上所述主中央处理器的当前剩余资源比例)所得的值;根据分配比例分成第一子任务堆和第二子任务堆,第一子任务堆所包含的子任务的个数=所有子任务的个数乘以分配比例的积的整数部分,第二子任务堆所包含的子任务的个数=所有子任务的个数减去第一子任务堆所包含的子任务的个数;将所述第一子任务堆分配给所述主中央处理器处理,将所述第二子任务堆分配给所述辅中央处理器处理;或者,
当按照预设的拆分规则将所述新任务拆分成多个子任务包括按照预设的拆分规则将新任务拆分为具有执行顺序的顺序子任务和不具有执行顺序的随意子任务时,所述根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源包括:
a:将各顺序子任务和各随意子任务按照类型加入优先级不同的队列,由所述顺序子任务组成的各队列为顺序子任务队列,由所述随意子任务组成的队列为随意子任务队列;
b:比较并选择当前剩余资源比例较大的一个中央处理器,设定该中央处理器为待执行中央处理器;
c:从优先级最高的队列中提取优先级最高子任务作为待处理子任务;
d:比较所述待执行中央处理器的当前剩余资源比例是否大于待处理子任务相应于该中央处理器的占用比例,若是,则将所述待处理子任务分配给所述待执行中央处理器,并返回执行步骤b,否则,转为步骤e;
e:判断所提取的子任务的队列是否为顺序子任务队列,若是,则从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并返回执行步骤d,否则,执行步骤f;
f:将与该待处理子任务相邻的子任务更新为待处理子任务,返回执行步骤d,直至该队列中没有待处理子任务的平衡因子小于所述待执行中央处理器的当前剩余资源比例,执行步骤g;
g:从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并返回执行步骤d。
2.根据权利要求1所述的移动终端处理任务的方法,其特征在于,所述识别到新任务包括:
当接收到新任务触发输入时即确定为识别到新任务;或
当根据输入指令建立新任务线程时即确定为识别到新任务。
3.根据权利要求1所述的移动终端处理任务的方法,其特征在于,所述按照预设的判断规则判断所述新任务是否能拆分包括:
将所述新任务的标识在预设判断规则中存储的标识中进行匹配,当匹配到一致的标识时,确定所述新任务能拆分;或者
将所述新任务的第一平衡因子与预设的第一拆分闽值进行比较,以及将所述新任务的第二平衡因子与预设的第二拆分闽值进行比较,当第一平衡因子大于第一拆分闽值或者第二平衡因子大于第二拆分闽值时,确定所述新任务能拆分。
4.根据权利要求1所述的移动终端处理任务的方法,其特征在于,还包括:
每隔预设时间,重复执行根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源的步骤。
5.一种移动终端处理任务的装置,其特征在于,包括:
判断模块,用于当识别到新任务时,按照预设的判断规则判断所述新任务是否能拆分;
拆分模块,用于当判断出所述新任务能拆分时,按照预设的拆分规则将所述新任务拆分成多个子任务;
获取模块,用于获取移动终端中的主中央处理器和辅中央处理器各自的当前剩余资源比例;
分配模块,用于根据所述主中央处理器的当前剩余资源比例、所述辅中央处理器的当前剩余资源比例、各所述子任务的第一平衡因子和第二平衡因子,为各所述子任务在所述主中央处理器和所述辅中央处理器中分配资源;
其中,所述第一平衡因子为所述子任务占用所述主中央处理器的预设比例,所述第二平衡因子为所述子任务占用所述辅中央处理器的预设比例;
所述分配模块包括:获取分配比例子模块,用于根据所述主中央处理器的当前剩余资源比例和所述辅中央处理器的当前剩余资源比例获取分配比例,所述分配比例为所述主中央处理器的当前剩余资源比例除以(所述辅中央处理器的当前剩余资源比例加上所述主中央处理器的当前剩余资源比例)所得的值;分堆子模块,用于根据分配比例分成第一子任务堆和第二子任务堆,第一子任务堆所包含的子任务的个数=所有子任务的个数乘以分配比例的积的整数部分,第二子任务堆所包含的子任务的个数=所有子任务的个数减去第一子任务堆所包含的子任务的个数;分配子任务子模块,用于将所述第一子任务堆分配给所述主中央处理器处理,将所述第二子任务堆分配给所述辅中央处理器处理;或者
当所述拆分模块具体用于按照预设的拆分规则将新任务拆分为具有执行顺序的顺序子任务和不具有执行顺序的随意子任务时,所述分配模块包括:
分队列子模块,用于将各顺序子任务和各随意子任务按照类型加入优先级不同的队列,由所述顺序子任务组成的各队列为顺序子任务队列,由所述随意子任务组成的队列为随意子任务队列;
第一比较子模块,用于比较并选择当前剩余资源比例较大的一个中央处理器,设定该中央处理器为待执行中央处理器;第一提取子模块,用于从优先级最高的队列中提取优先级最高的子任务作为待处理子任务;
第二比较子模块,用于比较所述待执行中央处理器的当前剩余资源比例是否大于待处理子任务相应于该中央处理器的占用比例,若是,则将所述待处理子任务分配给所述待执行中央处理器,否则,触发判断子任务队列子模块;
所述判断子任务队列子模块,用于判断所提取的子任务的队列是否为顺序子任务队列,若是,触发第二提取子模块,否则,触发第三提取子模块;
所述第二提取子模块,用于从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并将该待处理子任务发送给所述第二比较子模块;
所述第三提取子模块,用于将与该待处理子任务相邻的子任务更新为待处理子任务,并将该待处理子任务发送给所述第二比较子模块,当该队列中没有待处理子任务的平衡因子小于所述待执行中央处理器的当前剩余资源比例时,触发第四提取子模块;
第四提取子模块,用于从下一优先级队列中提取优先级最高的子任务更新为待处理子任务,并将该待处理子任务发送给所述第二比较子模块。
6.根据权利要求5所述的移动终端处理任务的装置,其特征在于,所述判断模块具体用于将所述新任务的标识在预设判断规则中存储的标识中进行匹配,当匹配到一致的标识时,确定所述新任务能拆分。
7.根据权利要求5所述的移动终端处理任务的装置,其特征在于,所述判断模块具体用于将所述新任务的第一平衡因子与预设的第一拆分闽值进行比较,以及将所述新任务的第二平衡因子与预设的第二拆分闽值进行比较,当第一平衡因子大于第一拆分闽值或者第二平衡因子大于第二拆分闽值时,确定所述新任务能拆分。
8.根据权利要求5所述的移动终端处理任务的装置,其特征在于,还包括:
重新分配子模块,用于每隔预设时间,触发所述分配模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210002121.0A CN102546946B (zh) | 2012-01-05 | 2012-01-05 | 移动终端处理任务的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210002121.0A CN102546946B (zh) | 2012-01-05 | 2012-01-05 | 移动终端处理任务的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102546946A CN102546946A (zh) | 2012-07-04 |
CN102546946B true CN102546946B (zh) | 2014-04-23 |
Family
ID=46352876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210002121.0A Active CN102546946B (zh) | 2012-01-05 | 2012-01-05 | 移动终端处理任务的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102546946B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106648850A (zh) * | 2015-11-02 | 2017-05-10 | 佳能株式会社 | 信息处理装置及其控制方法 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107275688B (zh) * | 2016-04-06 | 2020-09-11 | 西安中兴新软件有限责任公司 | 一种控制终端的控制终端的方法及终端 |
CN106940662A (zh) * | 2017-03-17 | 2017-07-11 | 上海传英信息技术有限公司 | 一种移动终端的多任务分配方法 |
CN107315629A (zh) * | 2017-06-14 | 2017-11-03 | 北京小米移动软件有限公司 | 任务处理方法、装置及存储介质 |
CN110377425A (zh) * | 2019-07-16 | 2019-10-25 | 浙江大华技术股份有限公司 | 设备中的任务执行方法、装置、存储介质及电子装置 |
CN110609742B (zh) * | 2019-09-25 | 2023-01-06 | 苏州浪潮智能科技有限公司 | 一种Kubernetes调度器的队列的配置方法和装置 |
CN110673940A (zh) * | 2019-09-27 | 2020-01-10 | 杭州迪普科技股份有限公司 | 应用程序的任务执行方法及装置、电子设备、存储介质 |
CN111159782B (zh) * | 2019-12-03 | 2021-05-18 | 支付宝(杭州)信息技术有限公司 | 安全任务处理方法和电子设备 |
CN111176833A (zh) * | 2019-12-06 | 2020-05-19 | 航天信息股份有限公司 | 一种多处理节点的任务分配方法及系统 |
CN111177782A (zh) * | 2019-12-30 | 2020-05-19 | 智慧神州(北京)科技有限公司 | 基于大数据的分布式数据的提取方法、装置与存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7075541B2 (en) * | 2003-08-18 | 2006-07-11 | Nvidia Corporation | Adaptive load balancing in a multi-processor graphics processing system |
CN101339523B (zh) * | 2007-07-05 | 2011-09-21 | 国际商业机器公司 | 多处理器环境中的流水线处理方法和设备 |
CN100562854C (zh) * | 2008-03-11 | 2009-11-25 | 浙江大学 | 多核处理器操作系统负载均衡的实现方法 |
CN101261591A (zh) * | 2008-04-28 | 2008-09-10 | 艾诺通信系统(苏州)有限责任公司 | 多核dsp系统中自适应的任务调度方法 |
CN101661406A (zh) * | 2008-08-28 | 2010-03-03 | 国际商业机器公司 | 处理单元调度装置和方法 |
-
2012
- 2012-01-05 CN CN201210002121.0A patent/CN102546946B/zh active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106648850A (zh) * | 2015-11-02 | 2017-05-10 | 佳能株式会社 | 信息处理装置及其控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102546946A (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102546946B (zh) | 移动终端处理任务的方法及装置 | |
CN107689010B (zh) | 批量处理保单任务的方法、装置、计算机设备及存储介质 | |
CN107958349B (zh) | 任务分配方法、装置、计算机设备和存储介质 | |
CN111124704B (zh) | 一种数据处理方法、处理器及终端设备 | |
CN107786463B (zh) | 一种网络数据的下载方法及装置和介质产品 | |
EP1770620A3 (en) | Method for modelling processing procedures | |
CN104679548B (zh) | 一种信息处理的方法及电子设备 | |
CN110633135A (zh) | 异步任务分配方法、装置、计算机设备及存储介质 | |
CN109359060B (zh) | 数据抽取方法、装置、计算设备及计算机存储介质 | |
CN106339802A (zh) | 任务分配的方法和装置、电子设备 | |
CN103748559A (zh) | 利用工作需求反馈在处理器之间进行工作划分的方法和系统 | |
CN112150023A (zh) | 任务分配方法、装置及存储介质 | |
CN110928905A (zh) | 一种数据处理方法和装置 | |
CN114461393A (zh) | 多任务调度方法、装置、电子设备、系统及自动驾驶车辆 | |
CN102945185A (zh) | 任务调度方法及装置 | |
CN109800078B (zh) | 一种任务处理方法、任务分发终端及任务执行终端 | |
CN106855825B (zh) | 一种任务处理方法及其装置 | |
CN112199407B (zh) | 一种数据分组排序方法、装置、设备及存储介质 | |
CN111949411B (zh) | 资源分配方法、装置、计算机设备及计算机可读存储介质 | |
CN106254470A (zh) | 分布式作业分片分配方法和装置 | |
CN113377998A (zh) | 数据加载的方法、装置、电子设备及存储介质 | |
CN112817428A (zh) | 任务运行方法、装置、移动终端和存储介质 | |
CN112698962A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN110377430B (zh) | 数据迁移方法、设备、存储介质及装置 | |
CN114896295B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |