CN109451155A - 终端温度动态控制方法、终端、系统及存储介质 - Google Patents
终端温度动态控制方法、终端、系统及存储介质 Download PDFInfo
- Publication number
- CN109451155A CN109451155A CN201811291466.6A CN201811291466A CN109451155A CN 109451155 A CN109451155 A CN 109451155A CN 201811291466 A CN201811291466 A CN 201811291466A CN 109451155 A CN109451155 A CN 109451155A
- Authority
- CN
- China
- Prior art keywords
- task
- weight
- terminal
- temperature
- current
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72448—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
- H04M1/72454—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72448—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2250/00—Details of telephonic subscriber devices
- H04M2250/12—Details of telephonic subscriber devices including a sensor for measuring a physical value, e.g. temperature or motion
Abstract
本发明公开了一种终端温度动态控制方法,包括:获取终端的当前温度,在确定所述当前温度与预设目标温度的温差不在预设温差范围内时,根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重;及根据所计算得到的当前任务权重调整所述终端当前运行的任务。本发明还公开了一种终端、终端温度动态控制系统及存储介质。本发明能够预先设置任务的优先级,对任务进行细分,并根据终端当前运行的任务对任务进行动态调整来控制终端的温度恒定在目标温度处。
Description
技术领域
本发明涉及终端技术领域,尤其涉及终端温度动态控制方法、终端、系统及存储介质。
背景技术
随着终端功能的增加,用户使用终端的时间越来越长,终端运行的任务越多,终端的温度便会越高,势必会影响终端的使用寿命。现有的控制终端温度的方案是检查终端温度是否达到温度阈值,达到温度阈值之后就降低终端的功耗,来实现对终端温度的控制。
然而,现有的控制终端温度的方案,对终端内运行的任务没有做细分,导致在跑业务的时候,温度上升没有及时控制,只有等温度达到温度阈值时才停止任务,造成任务运行中断。
发明内容
本发明的主要目的在于提供终端温度动态控制方法、终端、系统及存储介质,旨在解决根据运行的任务进行动态控制终端温度的技术问题。
为实现上述目的,本发明提供的终端温度动态控制方法,所述方法包括:
获取终端的当前温度;
判断所述当前温度与预设目标温度的温差是否在预设温差范围内;
当确定所述当前温度与预设目标温度的温差不在预设温差范围内时,根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重;及
根据所计算得到的当前任务权重调整所述终端当前运行的任务。
优选地,所述根据所计算得到的当前任务权重调整所述终端当前运行的任务包括:通过比例-积分-微分PID控制器根据所计算得到的当前任务权重调整所述终端当前运行的任务,所述比例-积分-微分PID控制器的输出值为当前任务权重总和与所述PID控制器的下一个采样周期的任务权重总和的差值,所述根据所计算得到的当前任务权重,采用比例-积分-微分PID控制器调整所述终端当前运行的任务包括:
若所述差值小于0时,从所述终端当前运行的任务中从对应当前任务权重最小的任务开始停止运行,直至所停止运行的任务的任务权重总和在所述差值的预设范围内;
若所述差值大于0时,从所述终端中当前没有运行的任务中从对应历史任务权重最大的任务开始增加运行,直至所增加运行的任务的任务权重总和在所述差值的预设范围内。
优选地,所述终端中当前没有运行的任务包括:从未被运行的任务及之前已运行过但被停止了的任务,其中,所述从未被运行的任务对应的历史任务权重取默认值,所述之前已运行过但被停止了的任务对应的历史任务权重取停止运行前的任务权重。
优选地,所述根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重包括:
获取所述当前运行的任务开始运行预设时间段后所述终端的第一温差;
根据所述第一温差计算所述当前运行的任务中的每个任务的当前温度权重;
根据所述预设的任务优先级及所述当前温度权重计算所述当前运行的任务中的每个任务的当前任务权重。
优选地,所述根据所述第一温差计算所述当前运行的任务中的每个任务的当前温度权重采用如下公式计算:
temp_weight_default=Δtemp/ΔT/n
其中,temp_weight_default表示所述当前运行的任务中的每个任务的当前温度权重,Δtemp表示所述第一温差,ΔT表示所述预设时间段,n表示所述当前运行的任务的数量。
优选地,根据所述预设的任务优先级及所述当前温度权重计算所述当前运行的任务中的每个任务的当前任务权重采用如下公式计算:
task_weight=a*priority+b/temp_weight_default
其中,task_weight表示所述当前运行的任务中的每个任务的当前任务权重,priority表示所述预设的任务优先级,a和b是常量参数。
优选地,在所述根据所计算得到的当前任务权重,采用比例-积分-微分PID控制器调整所述终端当前运行的任务之后,所述方法还包括:
获取调整所述终端当前运行的任务之后的温度;
计算所述调整之后的温度与所述调整之前的温度得到调整的温差;
根据所述调整的温差计算调整后运行的任务中的每一个任务的调整温度权重;
将所述调整温度权重作为新的当前温度权重并重新计算每个任务的当前任务权重,将调整之前的任务权重作为历史任务权重。
优选地,所述将所述调整温度权重作为新的当前温度权重还包括:
将所述调整温度权重的平均值作为新的当前温度权重。
优选地,所述调整温度权重的平均值采用如下公式计算:
mean_temp_weight=(mean_temp_weight*(m–1)+new_temp_weight)/m
其中,mean_temp_weight表示所述调整温度权重的平均值,m是指调整的次数。
为实现上述目的,本发明进一步提供一种终端,所述终端包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的终端温度动态控制程序,所述终端温度动态控制程序被所述处理器执行时实现如所述终端温度动态控制方法。
为实现上述目的,本发明进一步提供一种终端温度动态控制系统,所述系统包括:
获取模块,用于获取终端的当前温度;
判断模块,用于判断所述当前温度与预设目标温度的温差是否在预设温差范围内;
计算模块,用于当确定所述当前温度与预设目标温度的温差不在预设温差范围内时,根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重;及
调整模块,用于根据所计算得到的当前任务权重调整所述终端当前运行的任务。
为实现上述目的,本发明进一步提供一种计算机可读存储介质,所述计算机可读存储介质上存储有终端温度动态控制程序,所述终端温度动态控制程序可被一个或者多个处理器执行,以实现所述的终端温度动态控制方法。
本发明实施例所述的终端温度动态控制方法、终端、系统及存储介质,能够获取终端的当前温度,在确定所述当前温度与预设目标温度的温差不在预设温差范围内时,根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重;及根据所计算得到的当前任务权重调整所述终端当前运行的任务。因此,本发明能够预先设置任务的优先级,对任务进行细分,并根据终端当前运行的任务对任务进行动态调整来控制终端的温度恒定在目标温度处,从而可通过对终端温度的有效控制来避免因为温度过高而导致终端内的任务无法正常运行。
附图说明
图1为本发明一实施例揭露的终端温度动态控制方法的流程示意图;
图2为图1中根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重的步骤的细化流程示意图;
图3为本发明一实施例揭露的终端温度动态控制系统的功能模块示意图;
图4为图3中计算模块的细化功能模块示意图;
图5为本发明一实施例揭露的终端的内部结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
实施例一
参照图1,图1为本发明实施例揭露的一种终端温度动态控制方法的流程示意图。所述终端温度动态控制方法体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
S11:获取终端的当前温度。
当终端上电启动后,定时或者实时检测所述终端的当前温度。在定时检测所述终端的当前温度的过程中,用户可根据需要设置检测所述终端的间隔时间,如可设置每间隔5分钟,或者10分钟检测一次所述终端的当前温度。可以理解的是,所述终端包括但不限于智能手机和掌上电脑。
本实施例中,所述终端内可以装设有温度采集设备。所述温度采集设备采集终端的温度,并将采集到的温度实时发送至终端的中央处理器(central processing unit,CPU)。所述温度采集设备可以是温度传感器。在一个实例中,所述温度传感器可以是数字式DS18B20。该温度传感器内含有AD转换器,该AD转换器可以直接输出数字量。
在其他实施例中,所述温度采集设备还可以独立设置在所述终端外部,将采集到的终端的温度通过网络发送至终端。
S12:判断所述当前温度与预设目标温度的温差是否在预设温差范围内。
本实施例中,可以预先设置终端的目标温度及温差范围。
所述预设目标温度是指终端所能运行的适量的任务又不会影响运行的任务的性能的最适宜的温度。
所述预设温差范围是指终端的当前温度与预设目标温度的温差的临界值。即可以允许终端的当前温度在预设目标温度附近进行波动。所述温差范围可以是-1°至1°。
当确定所述当前温度与预设目标温度的温差在预设温差范围内时,可以继续执行所述S11,或者直接结束流程。当确定所述当前温度与预设目标温度的温差不在预设温差范围内时,执行S13。
S13:根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重。
本实施例中所提及的任务可以是,但不局限于:所述终端内可运行的各项软件(应用程序)、指令或相关程序代码等。
本实施例中,所述预设的任务优先级可以是根据任务的属性进行预先设置的。所述任务的属性可以是完成任务所需的时间,任务的来源,或者任务运行时占用的CPU大小等。示例性的,若第一任务来源于A,则设置第一任务对应第一优先级;若第二任务来源于B,则设置第二任务对应第二优先级,其中,第一优先级高于第二优先级。又如,完成任务所需的时间越长,对应设置的优先级越低,完成任务所需的时间越短,对应设置的优先级越高。
本实施例中的任务的属性并不限于所列举的上述几种属性,其他能够代表任务的属性也应当包含在此。
所述当前任务权重是指终端中当前正在运行的任务所对应的任务权重,所述当前任务权重是相对历史任务权重而言的,所述历史任务权重是指终端中当前未运行的任务所对应的任务权重。具体的,关于当前任务权重和历史任务权重及所述根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重可参见图2及其相应描述。
S14:根据所计算得到的当前任务权重调整所述终端当前运行的任务。
本实施例中,当确定所述当前温度与预设目标温度的温差不在预设温差范围内时,可根据计算得到的当前任务权重动态调整所述终端当前运行的任务。
所述根据所计算得到的当前任务权重调整所述终端当前运行的任务可以包括:通过PID控制器根据计算得到的当前任务权重调整所述终端当前运行的任务;或者预先设置调整规则,根据所述调整规则及当前任务权重调整终端当前运行的任务。优选的,本实施例通过采用PID控制器结合当前任务权重调整终端当前运行的任务。
所述PID控制器分为比例运行、积分运算和微分运算,通过负反馈的机制来控制输入以达到稳定输出的目的。本实施例中,使用增量式的PID控制器,增量式PID控制器,是通过对控制量的增量(本次控制量和上次控制量的差值)进行PID控制的一种控制器。所述增量式的PID控制器为现有技术,本发明实施例在此不再详细叙述。
本实施例中,所述比例-积分-微分PID控制器的输出值为当前任务权重总和与所述PID控制器的下一个采样周期的任务权重总和的差值。即输出的是终端当前正在运行的所有任务对应的任务权重的总和与先前终端运行的所有任务对应的任务权重的总和的差值。
本实施例中,可以预先初始化所述比例-积分-微分PID控制器的参数。所述比例-积分-微分PID控制器的初始化参数可包括PID控制器中的比例系数(P)、积分常数(I)及微分常数(D)。优选的,所述比例系数P可以初始化设置为50,所述积分常数I可以初始化设置为100,所述微分常数D可以初始化设置为25。本领域的技术人员还可以根据环境需求及/或实际温度结果设置或调整所述比例-积分-微分PID控制器的初始化参数。
由于所述终端的当前温度与预设目标温度的温差不在预设温差范围内,即所述终端的当前温度与所述预先目标温度相差较大,即所述当前温度可能高于所述预设目标温度,也可能低于所述预设目标温度,可以采用比例-积分-微分PID控制器调整所述终端当前运行的任务来改变所述终端的温度以达到稳定终端的温度的目的。
优选的,所述根据所计算得到的当前任务权重,采用比例-积分-微分PID控制器调整所述终端当前运行的任务包括:
若所述差值小于0时,从所述终端当前运行的任务中从对应当前任务权重最小的任务开始停止运行,直至所停止运行的任务的任务权重总和在所述差值的预设范围内;
若所述差值大于0时,从所述终端中当前没有运行的任务中从对应历史任务权重最大的任务开始增加运行,直至所增加运行的任务的任务权重总和在所述差值的预设范围内。
本实施例,通过比较所述比例-积分-微分PID控制器的输出值与0之间的大小,并根据比较结果调整所述终端内当前运行的任务类型及/或运行任务的数量。在确定所述PID的输出值小于0时,通过从所述终端当前正在运行的任务中从对应当前任务权重最小的任务开始停止运行,减少所述终端内运行的任务的数量,直至所减少运行的任务的任务权重总和在所述差值的预设范围(例如,-10%至+10%)内,以此来减少所述终端当前的功耗从而降低所述终端的温度。在确定所述PID的输出值大于0时,通过从所述终端中当前没有运行的任务中从对应历史任务权重最大的任务开始增加运行,增加所述终端内运行的任务的数量,直至所增加运行的任务的任务权重总和在所述差值的预设范围(例如,-10%至+10%)内,以此来增加所述终端当前的功耗从而充分利用所述终端的资源,确保终端内部温度不至于快速上升且能运行更多的任务。所述终端的资源可以包括:CPU、线程、数据库连接数等。
优选的,所述方法还可以包括:显示所述终端当前的温度状态,配合按键预先设定所述目标温度、比例系数(P)、积分常数(I)、微分常数(D)、采样时间、步进量。
示例性的,假设采样时间为30s,步进量取0.5℃,表明每30s或者每30s的整数倍以0.5℃为最小步进量调整终端的温度。比如目标温度设定为10℃,此时终端的实际温度为20℃,则可以设定调整时间为300s,从而在5分钟内终端的温度就可恒定于10℃。
本实施例中,通过显示并配合按键手动调整所述PID控制器的参数,能根据实际情况且按照要求的精度自动控制所述终端的温度并实现了按照时间来维持恒温的目的。
综上所述,本发明实施例所述的终端温度动态控制方法,首先获取终端的当前温度,在计算所述当前温度与预设目标温度的温差不在预设温差范围内时,根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重,最后根据所计算得到的当前任务权重,采用比例-积分-微分PID控制器计算增加或者减少的控制信号,可实现终端内的实际温度与目标温度偏差较大时的快速调整,通过调整所述终端当前运行的任务,从而使终端内的温度恒定于目标温度,而不受终端性能及品牌差异的影响。
另外,通过显示并配合按键可以实现终端内的实际温度与目标温度偏差较小时的精细调整,并实现了按照时间来维持恒温的目的,保证了恒温过程的快速性和恒温温度的精确性。
参照图2,图2为图1中根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重的步骤的细化流程示意图。
S21:获取所述当前运行的任务开始运行预设时间段后所述终端的第一温差。
本实施例中,所述终端的温差包括两种情形:一种是终端上电启动并运行任务预设时间段后的温差;另一种是终端已经运行过任务一段时间并再运行任务预设时间段后的温差。为便于简化计算量且获取更加准确的第一温差及利于计算后续的当前任务权重,优选的,以第一种情形为例获取所述当前运行的任务开始运行预设时间段后所述终端的第一温差。
具体而言,对于第一种情形:由于所述终端运行所述当前运行的任务预设时间段后,终端的温度会相比上电启动时且没有运行任何任务时的初始温度温度高,一般而言默认为所述初始温度为0,则终端运行所述当前运行的任务预设时间段后的第一温度也即第一温差(即所述第一温度与所述初始温度之差)。
对于第二种情形:由于所述终端在没有运行所述当前运行的任务之前运行了其他任务,因而此时终端也有温度,若要计算终端运行所述当前运行的任务预设时间段后的第一温差,则可以先获取所述终端没有运行所述当前运行的任务时的温度,再获取所述终端运行所述当前运行的任务预设时间段后的温度,将二者的温度做差值计算即可得到所述终端开始运行所述当前运行的任务预设时间段后的第一温差。
所述预设时间段可以是指固定的时间段,例如,2秒,还可以是随机选取的一个时间段。
S22:根据所述第一温差计算所述当前运行的任务中的每个任务的当前温度权重。
本实施例中,获取到第一温差之后,便可以计算所述当前运行的任务中的每个任务的当前温度权重。用公式(1-1)表示如下:
temp_weight_default=Δtemp/ΔT/n (1-1)
其中,temp_weight_default表示所述当前运行的任务中的每个任务的当前温度权重,Δtemp表示所述第一温差,ΔT表示所述预设时间段,n表示所述当前运行的任务的数量。所述当前温度权重是指默认的任务权重,计算得到的每个任务的当前温度权重是相同的。
所述温度权重是指任务运行单位时间(例如,30秒)后对所述终端的温度的影响程度。当任务对应的温度权重越大时,表明该任务对所述终端的温度的影响程度越大,即在优先级相同的情况下,单位时间内运行该任务时,终端的温度变化的越快。当任务对应的温度权重越小时,表明该任务对所述终端的温度的影响程度越小,即在优先级相同的情况下,单位时间内运行该任务时,终端的温度变化的越慢。
S23:根据所述预设的任务优先级及所述当前温度权重计算所述当前运行的任务中的每个任务的当前任务权重。
所述当前运行的任务被运行所述预设时间段后,所述当前运行的任务的当前任务权重会发生变化,根据所述预设的任务优先级及计算的所述当前温度权重计算出所述当前运行的任务中的每个任务的当前任务权重。用公式(1-2)表示如下:
task_weight=a*priority+b/temp_weight_default(1-2)
其中,task_weight表示所述当前运行的任务中的每个任务的当前任务权重,priority表示所述预设的任务优先级,a和b是常量参数。所述当前任务权重是指所述当前运行的任务中的每个任务被运行所述预设时间段后对应的当前的任务权重。不同的任务,对应的priority值不同,计算得到的当前任务权重不同,当前任务权重越大表明对终端当前的温度敏感越大,影响越大。所述priority取值范围为[1,128],默认a取1,b取0.5。设置比例系数a的值大于b的值,是为了使预设的任务优先级对任务权重的影响大于温度权重对任务权重的影响。
通过上述公式(1-2)可知,在任务优先级相同的情况下时,温度权重越大,对应得到的任务权重越小;温度权重越小,对应得到的任务权重越大。而温度权重代表对应的任务对终端的温度的影响程度,在终端的温度较高或者较低时,由于任务权重越小,对温度的影响程度越大,此时可通过优先调整对应任务权重越小的任务可实现对终端温度的快速调整。而在终端的温度平稳时,由于任务权重越大,对温度的影响程度越小,此时可通过优先调整对应任务权重越大的任务可实现终端内运行的任务的数量的快速调整,使得终端可运行更多的任务以充分利用终端的资源。如此可保证终端不容易出现波动。
进一步的,在所述根据所计算得到的当前任务权重,采用比例-积分-微分PID控制器调整所述终端当前运行的任务之后,所述方法还可以包括:
1)获取调整所述终端当前运行的任务之后的温度;
2)计算所述调整之后的温度与所述调整之前的温度得到调整的温差;
3)根据所述调整的温差计算调整后运行的任务中的每一个任务的调整温度权重;
用公式(1-3)表示如下:
new_temp_weight=(Δtemp1/ΔT1)/n1 (1-3)
其中,new_temp_weight表示所述调整后运行的任务中的每一个任务的调整温度权重,Δtemp1表示所述调整的温差,ΔT1表示所述比例-积分-微分PID控制器的采样时间,n1表示所述调整后运行的任务的数量;
4)将所述调整温度权重作为新的当前温度权重并重新计算每个任务的当前任务权重,将调整之前的任务权重作为历史任务权重。
本实施例中,当采用所述比例-积分-微分PID控制器调整所述终端当前运行的任务之后,由于终端当前运行的任务的数量及/或类型有所改变,因而终端的温度也会随之发生改变,采用比例-积分-微分PID控制器输出所述终端调整之后的温度,并计算调整的温差。根据调整的温差计算调整后运行的任务中的每个任务的温度权重,并将计算得到的所述温度权重作为新的当前温度权重,从而新的当前温度权重重新计算新的当前任务权重。后续所述比例-积分-微分PID控制器根据所述新的当前任务权重再次调整所述当前运行的任务。如此经过多轮调整后,所述终端的温度会趋于所述预设的目标温度。
优选的,将所述调整温度权重作为新的当前温度权重还可以包括:将所述调整温度权重的平均值作为新的当前温度权重,采用如下公式(1-4)表示:
mean_temp_weight=(mean_temp_weight*(m–1)+new_temp_weight)/m
(1-4)
其中,mean_temp_weight表示所述调整温度权重的平均值,m是指调整的次数。
应当理解的是,终端在不断的调整过程中,会停止一些正在运行的任务,也会新增加一些任务。对于新增加的任务可能是首次被增加,也有可能是之前已运行过但被停止了的任务。此时,对于首次被增加运行时的任务对应的当前任务权重默认均相同,为所计算的task_weight。对于之前已运行过但被停止了的任务,再次被增加运行时的任务对应的当前任务权重则以停止运行时的任务权重为当前任务权重,而停止运行时的任务权重称之为历史任务权重。
综上所述,本发明实施例所述的终端温度动态控制方法,通过当前温差计算当前温度权重,根据当前温度权重及预设的任务优先级计算当前任务权重,并在后续调整当前运行的任务之后,再次计算调整后的温差,根据调整后的温差计算新的当前温度权重及新的当前任务权重。能够根据终端的温度实时的调整任务权重,再次调整运行的任务,在确定所述PID的输出值小于0时,从所述终端当前正在运行的任务中从对应当前任务权重最小的任务开始停止运行,是因为在相同优先级的情况下,任务权重越小,对应的温度权重越大,即任务对温度的影响越大,使得终端的温度变化越快,通过停止运行对应的当前任务权重小的任务,能确保终端内部温度快速变化。在确定所述PID的输出值大于0时,从所述终端中当前没有运行的任务中从对应历史任务权重最大的任务开始增加运行,是因为在相同优先级的情况下,任务权重越大,对应的温度权重越小,即任务对温度的影响越小,使得终端的温度变化缓慢,通过增加运行对应的历史任务权重大的任务,能确保终端内部温度缓慢变化的同时运行更多的任务以充分利用终端的资源。如此循环往复的动态调整了终端的温度,确保终端的温度不至于快速变化,且还能动态调整终端内运行的任务的数量。
上述图1和图2详细介绍了本发明的终端温度动态控制方法,下面结合第3~5图,分别对实现所述终端温度动态控制方法的软件系统的功能模块以及实现所述终端温度动态控制的硬件装置架构进行介绍。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
实施例二
参阅图3所示,为本发明一实施例揭露的终端温度动态控制系统的功能模块示意图。
在一些实施例中,所述终端温度动态控制系统10运行于终端中。所述终端温度动态控制系统10可以包括多个由程序代码段所组成的功能模块。所述终端温度动态控制系统10中的各个程序段的程序代码可以存储于终端的存储器中,并由所述至少一个处理器所执行,以执行(详见图1和图2描述)对终端的温度进行动态的控制。
本实施例中,所述终端温度动态控制系统10根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:获取模块301、判断模块302、计算模块303、调整模块304及显示模块305,其中所述计算模块303还包括第一获取子模块3030、第一计算子模块3032、第二计算子模块3034及第二获取子模块3036。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
获取模块301,用于获取终端的当前温度。
当终端上电启动后,获取模块301定时或者实时检测所述终端的当前温度。在定时检测所述终端的当前温度的过程中,用户可根据需要设置检测所述终端的间隔时间,如可设置每间隔5分钟,或者10分钟检测一次所述终端的当前温度。可以理解的是,所述终端包括但不限于智能手机和掌上电脑。
本实施例中,所述终端内可以装设有温度采集设备。所述温度采集设备采集终端的温度,并将采集到的温度实时发送至终端的中央处理器(central processing unit,CPU)。所述温度采集设备可以是温度传感器。在一个实例中,所述温度传感器可以是数字式DS18B20。该温度传感器内含有AD转换器,该AD转换器可以直接输出数字量。
在其他实施例中,所述温度采集设备还可以独立设置在所述终端外部,将采集到的终端的温度通过网络发送至终端。
判断模块302,用于判断所述当前温度与预设目标温度的温差是否在预设温差范围内。
本实施例中,可以预先设置终端的目标温度及温差范围。
所述预设目标温度是指终端所能运行的适量的任务又不会影响运行的任务的性能的最适宜的温度。
所述预设温差范围是指终端的当前温度与预设目标温度的温差的临界值。即可以允许终端的当前温度在预设目标温度附近进行波动。所述温差范围可以是-1°至1°。
计算模块303,用于当所述判断模块302确定所述当前温度与预设目标温度的温差不在预设温差范围内时,根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重。
本实施例中所提及的任务可以是,但不局限于:所述终端内可运行的各项软件(应用程序)、指令或相关程序代码等。
本实施例中,所述预设的任务优先级可以是根据任务的属性进行预先设置的。所述任务的属性可以是完成任务所需的时间,任务的来源,或者任务运行时占用的CPU大小等。示例性的,若第一任务来源于A,则设置第一任务对应第一优先级;若第二任务来源于B,则设置第二任务对应第二优先级,其中,第一优先级高于第二优先级。又如,完成任务所需的时间越长,对应设置的优先级越低,完成任务所需的时间越短,对应设置的优先级越高。
本实施例中的任务的属性并不限于所列举的上述几种属性,其他能够代表任务的属性也应当包含在此。
所述当前任务权重是指终端中当前正在运行的任务所对应的任务权重,所述当前任务权重是相对历史任务权重而言的,所述历史任务权重是指终端中当前未运行的任务所对应的任务权重。具体的,关于当前任务权重和历史任务权重及所述计算模块303根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重可参见图4及其相应描述。
调整模块304,用于根据所计算得到的当前任务权重调整所述终端当前运行的任务。
本实施例中,当确定所述当前温度与预设目标温度的温差不在预设温差范围内时,可根据计算得到的当前任务权重动态调整所述终端当前运行的任务。
所述根据所计算得到的当前任务权重调整所述终端当前运行的任务可以包括:通过PID控制器根据计算得到的当前任务权重调整所述终端当前运行的任务;或者预先设置调整规则,根据所述调整规则及当前任务权重调整终端当前运行的任务。优选的,本实施例通过采用PID控制器结合当前任务权重调整终端当前运行的任务。
所述PID控制器分为比例运行、积分运算和微分运算,通过负反馈的机制来控制输入以达到稳定输出的目的。本实施例中,使用增量式的PID控制器,增量式PID控制器,是通过对控制量的增量(本次控制量和上次控制量的差值)进行PID控制的一种控制器。所述增量式的PID控制器为现有技术,本发明实施例在此不再详细叙述。
本实施例中,所述比例-积分-微分PID控制器的输出值为当前任务权重总和与所述PID控制器的下一个采样周期的任务权重总和的差值。即输出的是终端当前正在运行的所有任务对应的任务权重的总和与先前终端运行的所有任务对应的任务权重的总和的差值。
本实施例中,可以预先初始化所述比例-积分-微分PID控制器的参数。所述比例-积分-微分PID控制器的初始化参数可包括PID控制器中的比例系数(P)、积分常数(I)及微分常数(D)。优选的,所述比例系数P可以初始化设置为50,所述积分常数I可以初始化设置为100,所述微分常数D可以初始化设置为25。本领域的技术人员还可以根据环境需求及/或实际温度结果设置或调整所述比例-积分-微分PID控制器的初始化参数。
由于所述终端的当前温度与预设目标温度的温差不在预设温差范围内,即所述终端的当前温度与所述预先目标温度相差较大,即所述当前温度可能高于所述预设目标温度,也可能低于所述预设目标温度,可以采用比例-积分-微分PID控制器调整所述终端当前运行的任务来改变所述终端的温度。
优选的,所述调整模块304根据所计算得到的当前任务权重,采用比例-积分-微分PID控制器调整所述终端当前运行的任务包括:
若所述差值小于0时,从所述终端当前运行的任务中从对应当前任务权重最小的任务开始停止运行,直至所停止运行的任务的任务权重总和在所述差值的预设范围内;
若所述差值大于0时,从所述终端中当前没有运行的任务中从对应历史任务权重最大的任务开始增加运行,直至所增加运行的任务的任务权重总和在所述差值的预设范围内。
本实施例,通过比较所述比例-积分-微分PID控制器的输出值与0之间的大小,并根据比较结果调整所述终端内当前运行的任务类型及/或运行任务的数量。在确定所述PID的输出值小于0时,通过从所述终端当前正在运行的任务中从对应当前任务权重最小的任务开始停止运行,减少所述终端内运行的任务的数量,直至所减少运行的任务的任务权重总和在所述差值的预设范围(例如,-10%至+10%)内,以此来减少所述终端当前的功耗从而降低所述终端的温度。在确定所述PID的输出值大于0时,通过从所述终端中当前没有运行的任务中从对应历史任务权重最大的任务开始增加运行,增加所述终端内运行的任务的数量,直至所增加运行的任务的任务权重总和在所述差值的预设范围(例如,-10%至+10%)内,以此来增加所述终端当前的功耗从而充分利用所述终端的资源,确保终端内部温度不至于快速上升且能运行更多的任务。所述终端的资源可以包括:CPU、线程、数据库连接数等。
优选的,所述终端温度动态控制系统10还可以包括:显示模块305,用于显示所述终端当前的温度状态,配合按键预先设定所述目标温度、比例系数(P)、积分常数(I)、微分常数(D)、采样时间、步进量。
示例性的,假设采样时间为30s,步进量取0.5℃,表明每30s或者每30s的整数倍以0.5℃为最小步进量调整终端的温度。比如目标温度设定为10℃,此时终端的实际温度为20℃,则可以设定调整时间为300s,从而在5分钟内终端的温度就可恒定于10℃。
本实施例中,通过显示并配合按键手动调整所述PID控制器的参数,能根据实际情况且按照要求的精度自动控制所述终端的温度并实现了按照时间来维持恒温的目的。
综上所述,本发明实施例所述的终端温度动态控制系统,首先获取终端的当前温度,在计算所述当前温度与预设目标温度的温差不在预设温差范围内时,根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重,最后根据所计算得到的当前任务权重,采用比例-积分-微分PID控制器计算增加或者减少的控制信号,可实现终端内的实际温度与目标温度偏差较大时的快速调整,通过调整所述终端当前运行的任务,从而使终端内的温度恒定于目标温度,而不受终端性能及品牌差异的影响。
另外,通过显示并配合按键可以实现终端内的实际温度与目标温度偏差较小时的精细调整,并实现了按照时间来维持恒温的目的,保证了恒温过程的快速性和恒温温度的精确性。
参照图4所示,为图3中所述计算模块303的细化功能模块示意图。
第一获取子模块3030,用于获取所述当前运行的任务开始运行预设时间段后所述终端的第一温差。
本实施例中,所述终端的温差包括两种情形:一种是终端上电启动并运行任务预设时间段后的温差;另一种是终端已经运行过任务一段时间并再运行任务预设时间段后的温差。为便于简化计算量且获取更加准确的第一温差及利于计算后续的当前任务权重,优选的,以第一种情形为例获取所述当前运行的任务开始运行预设时间段后所述终端的第一温差。
具体而言,对于第一种情形:由于所述终端运行所述当前运行的任务预设时间段后,终端的温度会相比上电启动时且没有运行任何任务时的初始温度温度高,一般而言默认为所述初始温度为0,则终端运行所述当前运行的任务预设时间段后的第一温度也即第一温差(即所述第一温度与所述初始温度之差)。
对于第二种情形:由于所述终端在没有运行所述当前运行的任务之前运行了其他任务,因而此时终端也有温度,若要计算终端运行所述当前运行的任务预设时间段后的第一温差,则可以先获取所述终端没有运行所述当前运行的任务时的温度,再获取所述终端运行所述当前运行的任务预设时间段后的温度,将二者的温度做差值计算即可得到所述终端开始运行所述当前运行的任务预设时间段后的第一温差。
所述预设时间段可以是指固定的时间段,例如,2秒,还可以是随机选取的一个时间段。
第一计算子模块3032,用于根据所述第一温差计算所述当前运行的任务中的每个任务的当前温度权重。
本实施例中,获取到第一温差之后,便可以计算所述当前运行的任务中的每个任务的当前温度权重。用公式(1-1)表示如下:
temp_weight_default=Δtemp/ΔT/n (1-1)
其中,temp_weight_default表示所述当前运行的任务中的每个任务的当前温度权重,Δtemp表示所述第一温差,ΔT表示所述预设时间段,n表示所述当前运行的任务的数量。所述当前温度权重是指默认的任务权重,计算得到的每个任务的当前温度权重是相同的。
所述温度权重是指任务运行单位时间(例如,30秒)后对所述终端的温度的影响程度。当任务对应的温度权重越大时,表明该任务对所述终端的温度的影响程度越大,即在优先级相同的情况下,单位时间内运行该任务时,终端的温度变化的越快。当任务对应的温度权重越小时,表明该任务对所述终端的温度的影响程度越小,即在优先级相同的情况下,单位时间内运行该任务时,终端的温度变化的越慢。
第二计算子模块3034,用于根据所述预设的任务优先级及所述当前温度权重计算所述当前运行的任务中的每个任务的当前任务权重。
所述当前运行的任务被运行所述预设时间段后,所述当前运行的任务的当前任务权重会发生变化,根据所述预设的任务优先级及计算的所述当前温度权重计算出所述当前运行的任务中的每个任务的当前任务权重。用公式(1-2)表示如下:
task_weight=a*priority+b/temp_weight_default (1-2)
其中,task_weight表示所述当前运行的任务中的每个任务的当前任务权重,priority表示所述预设的任务优先级,a和b是常量参数。所述当前任务权重是指所述当前运行的任务中的每个任务被运行所述预设时间段后对应的当前的任务权重。不同的任务,对应的priority值不同,计算得到的当前任务权重不同,当前任务权重越大表明对终端当前的温度敏感越大,影响越大。所述priority取值范围为[1,128],默认a取1,b取0.5。设置比例系数a的值大于b的值,是为了使预设的任务优先级对任务权重的影响大于温度权重对任务权重的影响。
通过上述公式(1-2)可知,在任务优先级相同的情况下时,温度权重越大,对应得到的任务权重越小;温度权重越小,对应得到的任务权重越大。而温度权重代表对应的任务对终端的温度的影响程度,在终端的温度较高或者较低时,由于任务权重越小,对温度的影响程度越大,此时可通过优先调整对应任务权重越小的任务可实现对终端温度的快速调整。而在终端的温度平稳时,由于任务权重越大,对温度的影响程度越小,此时可通过优先调整对应任务权重越大的任务可实现终端内运行的任务的数量的快速调整,使得终端可运行更多的任务以充分利用终端的资源。如此可保证终端不容易出现波动。
第二获取子模块3036,用于在所述根据所计算得到的当前任务权重,采用比例-积分-微分PID控制器调整所述终端当前运行的任务之后,获取调整所述终端当前运行的任务之后的温度及计算所述调整之后的温度与所述调整之前的温度得到调整的温差;
所述第一计算子模块3032,还用于根据所述调整的温差计算调整后运行的任务中的每一个任务的调整温度权重;
用公式(1-3)表示如下:
new_temp_weight=(Δtemp1/ΔT1)/n1 (1-3)
其中,new_temp_weight表示所述调整后运行的任务中的每一个任务的调整温度权重,Δtemp1表示所述调整的温差,ΔT1表示所述比例-积分-微分PID控制器的采样时间,n1表示所述调整后运行的任务的数量;
所述第二计算子模块3034,还用于将所述调整温度权重作为新的当前温度权重并重新计算每个任务的当前任务权重,将调整之前的任务权重作为历史任务权重。
本实施例中,当采用所述比例-积分-微分PID控制器调整所述终端当前运行的任务之后,由于终端当前运行的任务的数量及/或类型有所改变,因而终端的温度也会随之发生改变,采用比例-积分-微分PID控制器输出所述终端调整之后的温度,并计算调整的温差。根据调整的温差计算调整后运行的任务中的每个任务的温度权重,并将计算得到的所述温度权重作为新的当前温度权重,从而新的当前温度权重重新计算新的当前任务权重。后续所述比例-积分-微分PID控制器根据所述新的当前任务权重再次调整所述当前运行的任务。如此经过多轮调整后,所述终端的温度会趋于所述预设的目标温度。
优选的,将所述调整温度权重作为新的当前温度权重还可以包括:将所述调整温度权重的平均值作为新的当前温度权重,采用如下公式(1-4)表示:
mean_temp_weight=(mean_temp_weight*(m–1)+new_temp_weight)/m
(1-4)
其中,mean_temp_weight表示所述调整温度权重的平均值,m是指调整的次数。
应当理解的是,终端在不断的调整过程中,会停止一些正在运行的任务,也会新增加一些任务。对于新增加的任务可能是首次被增加,也有可能是之前已运行过但被停止了的任务。此时,对于首次被增加运行时的任务对应的当前任务权重默认均相同,为所计算的task_weight。对于之前已运行过但被停止了的任务,再次被增加运行时的任务对应的当前任务权重则以停止运行时的任务权重为当前任务权重,而停止运行时的任务权重称之为历史任务权重。
综上所述,本发明实施例所述的终端温度动态控制系统,通过当前温差计算当前温度权重,根据当前温度权重及预设的任务优先级计算当前任务权重,并在后续调整当前运行的任务之后,再次计算调整后的温差,根据调整后的温差计算新的当前温度权重及新的当前任务权重。能够根据终端的温度实时的调整任务权重,再次调整运行的任务,在确定所述PID的输出值小于0时,从所述终端当前正在运行的任务中从对应当前任务权重最小的任务开始停止运行,是因为在相同优先级的情况下,任务权重越小,对应的温度权重越大,即任务对温度的影响越大,使得终端的温度变化越快,通过停止运行对应的当前任务权重小的任务,能确保终端内部温度快速变化。在确定所述PID的输出值大于0时,从所述终端中当前没有运行的任务中从对应历史任务权重最大的任务开始增加运行,是因为在相同优先级的情况下,任务权重越大,对应的温度权重越小,即任务对温度的影响越小,使得终端的温度变化缓慢,通过增加运行对应的历史任务权重大的任务,能确保终端内部温度缓慢变化的同时运行更多的任务以充分利用终端的资源。如此循环往复的动态调整了终端的温度,确保终端的温度不至于快速变化,且还能动态调整终端内运行的任务的数量。
实施例三
图5为本发明一实施例揭露的终端的内部结构示意图。
在本实施例中,终端1可以是固定终端,例如PC(Personal Computer,个人电脑),也可以是固定终端,例如智能手机、平板电脑、掌上电脑、便携计算机、网络存储设备等终端设备。
所述终端1可以包括存储器11、处理器12和总线13。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是所述终端1的内部存储单元,例如所述终端1的硬盘。存储器11在另一些实施例中也可以是所述终端1的外部存储设备,例如所述终端1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。进一步地,存储器11还可以既包括所述终端1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于所述终端1的应用软件及各类数据,例如终端温度动态控制程序100的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行所述终端温度动态控制程序100等。
该总线13可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,所述终端1还可以包括网络接口,网络接口可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该终端1终端1与其他电子设备之间建立通信连接。
可选地,该终端1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在所述终端1中处理的信息以及用于显示可视化的用户界面。
图5仅示出了具有组件11-13以及所述终端温度动态控制程序100的所述终端1,本领域技术人员可以理解的是,图5示出的结构并不构成对所述终端1的限定,既可以是总线型结构,也可以是星形结构,所述终端1还可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (12)
1.一种终端温度动态控制方法,应用于终端中,其特征在于,所述方法包括:
获取终端的当前温度;
判断所述当前温度与预设目标温度的温差是否在预设温差范围内;
当确定所述当前温度与预设目标温度的温差不在预设温差范围内时,根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重;及
根据所计算得到的当前任务权重调整所述终端当前运行的任务。
2.如权利要求1所述的方法,其特征在于,所述根据所计算得到的当前任务权重调整所述终端当前运行的任务包括:通过比例-积分-微分PID控制器根据所计算得到的当前任务权重调整所述终端当前运行的任务,所述比例-积分-微分PID控制器的输出值为当前任务权重总和与所述PID控制器的下一个采样周期的任务权重总和的差值,包括:
若所述差值小于0时,从所述终端当前运行的任务中从对应当前任务权重最小的任务开始停止运行,直至所停止运行的任务的任务权重总和在所述差值的预设范围内;
若所述差值大于0时,从所述终端中当前没有运行的任务中从对应历史任务权重最大的任务开始增加运行,直至所增加运行的任务的任务权重总和在所述差值的预设范围内。
3.如权利要求2所述的方法,其特征在于,所述终端中当前没有运行的任务包括:从未被运行的任务及之前已运行过但被停止了的任务,其中,所述从未被运行的任务对应的历史任务权重取默认值,所述之前已运行过但被停止了的任务对应的历史任务权重取停止运行前的任务权重。
4.如权利要求1至3中任意一项所述的方法,其特征在于,所述根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重包括:
获取所述当前运行的任务开始运行预设时间段后所述终端的第一温差;
根据所述第一温差计算所述当前运行的任务中的每个任务的当前温度权重;
根据所述预设的任务优先级及所述当前温度权重计算所述当前运行的任务中的每个任务的当前任务权重。
5.如权利要求4所述的方法,其特征在于,所述根据所述第一温差计算所述当前运行的任务中的每个任务的当前温度权重采用如下公式计算:
temp_weight_default=Δtemp/ΔT/n
其中,temp_weight_default表示所述当前运行的任务中的每个任务的当前温度权重,Δtemp表示所述第一温差,ΔT表示所述预设时间段,n表示所述当前运行的任务的数量。
6.如权利要求4所述的方法,其特征在于,根据所述预设的任务优先级及所述当前温度权重计算所述当前运行的任务中的每个任务的当前任务权重采用如下公式计算:
task_weight=a*priority+b/temp_weight_default
其中,task_weight表示所述当前运行的任务中的每个任务的当前任务权重,priority表示所述预设的任务优先级,a和b是常量参数。
7.如权利要求4所述的方法,其特征在于,在所述根据所计算得到的当前任务权重,采用比例-积分-微分PID控制器调整所述终端当前运行的任务之后,所述方法还包括:
获取调整所述终端当前运行的任务之后的温度;
计算所述调整之后的温度与所述调整之前的温度得到调整的温差;
根据所述调整的温差计算调整后运行的任务中的每一个任务的调整温度权重;
将所述调整温度权重作为新的当前温度权重并重新计算每个任务的当前任务权重,将调整之前的任务权重作为历史任务权重。
8.如权利要求7所述的方法,其特征在于,所述将所述调整温度权重作为新的当前温度权重还包括:
将所述调整温度权重的平均值作为新的当前温度权重。
9.如权利要求8所述的方法,其特征在于,所述调整温度权重的平均值采用如下公式计算:
mean_temp_weight=(mean_temp_weight*(m–1)+new_temp_weight)/m
其中,mean_temp_weight表示所述调整温度权重的平均值,m是指调整的次数。
10.一种终端,其特征在于,所述终端包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的终端温度动态控制程序,所述终端温度动态控制程序被所述处理器执行时实现如权利要求1-9任一项所述的终端温度动态控制方法。
11.一种终端温度动态控制系统,运行于终端中,其特征在于,所述系统包括:
获取模块,用于获取终端的当前温度;
判断模块,用于判断所述当前温度与预设目标温度的温差是否在预设温差范围内;
计算模块,用于当确定所述当前温度与预设目标温度的温差不在预设温差范围内时,根据预设的任务优先级计算所述终端当前运行的任务中的每个任务的当前任务权重;及
调整模块,用于根据所计算得到的当前任务权重调整所述终端当前运行的任务。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有终端温度动态控制程序,所述终端温度动态控制程序可被一个或者多个处理器执行,以实现如权利要求1-9中任一项所述的终端温度动态控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811291466.6A CN109451155B (zh) | 2018-10-31 | 2018-10-31 | 终端温度动态控制方法、终端、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811291466.6A CN109451155B (zh) | 2018-10-31 | 2018-10-31 | 终端温度动态控制方法、终端、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109451155A true CN109451155A (zh) | 2019-03-08 |
CN109451155B CN109451155B (zh) | 2020-09-08 |
Family
ID=65549495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811291466.6A Active CN109451155B (zh) | 2018-10-31 | 2018-10-31 | 终端温度动态控制方法、终端、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109451155B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110113479A (zh) * | 2019-04-15 | 2019-08-09 | 珠海格力电器股份有限公司 | 智能终端降温策略的制定方法、降温方法、系统、终端 |
CN110647437A (zh) * | 2019-07-25 | 2020-01-03 | 平安科技(深圳)有限公司 | 基于pid控制器调整cpu使用率的方法、装置、终端及介质 |
CN110659130A (zh) * | 2019-07-25 | 2020-01-07 | 平安科技(深圳)有限公司 | Cpu使用率自适应调整方法、装置、终端及存储介质 |
CN111107619A (zh) * | 2019-12-27 | 2020-05-05 | 深圳市普威技术有限公司 | 一种通信系统的功率控制方法、通信系统及存储介质 |
CN112540633A (zh) * | 2020-12-04 | 2021-03-23 | 珠海格力电器股份有限公司 | 一种温度控制方法、装置、设备及介质 |
CN113534867A (zh) * | 2020-04-13 | 2021-10-22 | 成都鼎桥通信技术有限公司 | 一种终端的温度控制方法 |
CN114265487A (zh) * | 2021-11-26 | 2022-04-01 | 北京涌现数字科技有限公司 | 温度调节方法、装置、终端设备及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050138448A1 (en) * | 1998-11-24 | 2005-06-23 | Microsoft Corporation | System and method for terminating applications |
US20130183736A1 (en) * | 2012-01-18 | 2013-07-18 | C2 Biotechnologies, Llc | Process for Designing, Constructing, and Characterizing Fusion Enzymes for Operation in an Industrial Process |
CN103902335A (zh) * | 2014-03-12 | 2014-07-02 | 上海天奕达电子科技有限公司 | 一种后台程序清理的方法及其系统 |
CN104391554A (zh) * | 2014-10-23 | 2015-03-04 | 深圳市金立通信设备有限公司 | 一种调节终端温度的方法 |
CN105807873A (zh) * | 2016-03-08 | 2016-07-27 | 北京小米移动软件有限公司 | 温度控制方法及装置 |
-
2018
- 2018-10-31 CN CN201811291466.6A patent/CN109451155B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050138448A1 (en) * | 1998-11-24 | 2005-06-23 | Microsoft Corporation | System and method for terminating applications |
US20130183736A1 (en) * | 2012-01-18 | 2013-07-18 | C2 Biotechnologies, Llc | Process for Designing, Constructing, and Characterizing Fusion Enzymes for Operation in an Industrial Process |
CN103902335A (zh) * | 2014-03-12 | 2014-07-02 | 上海天奕达电子科技有限公司 | 一种后台程序清理的方法及其系统 |
CN104391554A (zh) * | 2014-10-23 | 2015-03-04 | 深圳市金立通信设备有限公司 | 一种调节终端温度的方法 |
CN105807873A (zh) * | 2016-03-08 | 2016-07-27 | 北京小米移动软件有限公司 | 温度控制方法及装置 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110113479A (zh) * | 2019-04-15 | 2019-08-09 | 珠海格力电器股份有限公司 | 智能终端降温策略的制定方法、降温方法、系统、终端 |
CN110647437B (zh) * | 2019-07-25 | 2022-08-05 | 平安科技(深圳)有限公司 | 基于pid控制器调整cpu使用率的方法、装置、终端及介质 |
CN110647437A (zh) * | 2019-07-25 | 2020-01-03 | 平安科技(深圳)有限公司 | 基于pid控制器调整cpu使用率的方法、装置、终端及介质 |
CN110659130A (zh) * | 2019-07-25 | 2020-01-07 | 平安科技(深圳)有限公司 | Cpu使用率自适应调整方法、装置、终端及存储介质 |
WO2021012511A1 (zh) * | 2019-07-25 | 2021-01-28 | 平安科技(深圳)有限公司 | 基于pid控制器调整cpu使用率的方法、装置、终端及介质 |
WO2021012510A1 (zh) * | 2019-07-25 | 2021-01-28 | 平安科技(深圳)有限公司 | Cpu使用率自适应调整方法、装置、终端及存储介质 |
CN111107619A (zh) * | 2019-12-27 | 2020-05-05 | 深圳市普威技术有限公司 | 一种通信系统的功率控制方法、通信系统及存储介质 |
CN111107619B (zh) * | 2019-12-27 | 2023-05-16 | 深圳市联洲国际技术有限公司 | 一种通信系统的功率控制方法、通信系统及存储介质 |
CN113534867A (zh) * | 2020-04-13 | 2021-10-22 | 成都鼎桥通信技术有限公司 | 一种终端的温度控制方法 |
CN112540633A (zh) * | 2020-12-04 | 2021-03-23 | 珠海格力电器股份有限公司 | 一种温度控制方法、装置、设备及介质 |
CN112540633B (zh) * | 2020-12-04 | 2021-08-31 | 珠海格力电器股份有限公司 | 一种温度控制方法、装置、设备及介质 |
CN114265487A (zh) * | 2021-11-26 | 2022-04-01 | 北京涌现数字科技有限公司 | 温度调节方法、装置、终端设备及计算机可读存储介质 |
CN114265487B (zh) * | 2021-11-26 | 2023-03-14 | 北京涌现数字科技有限公司 | 温度调节方法、装置、终端设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109451155B (zh) | 2020-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109451155A (zh) | 终端温度动态控制方法、终端、系统及存储介质 | |
EP3274827B1 (en) | Technologies for offloading and on-loading data for processor/coprocessor arrangements | |
US20170133862A1 (en) | Electronic device and method charging electronic device | |
US9360855B2 (en) | Anomaly detection system for detecting anomaly in multiple control systems | |
US20170255494A1 (en) | Techniques for computing resource discovery and management | |
JP2018504676A (ja) | ヘテロジニアスコアデバイス上での機械学習のためのアプリケーションの特徴付け | |
CN106412091A (zh) | 数据传输的控制方法、装置及系统 | |
US8776069B2 (en) | Energy and performance optimizing job scheduling | |
CN102591815A (zh) | 一种用环形数据缓冲区读写批量数据的方法及装置 | |
CN109634915A (zh) | 文件部署方法、云服务器、系统及存储介质 | |
WO2021012510A1 (zh) | Cpu使用率自适应调整方法、装置、终端及存储介质 | |
EP2919115A2 (en) | Task migration method and apparatus | |
WO2018120861A1 (zh) | 背光亮度数据获取及处理方法、装置、液晶显示设备 | |
JP2017211928A (ja) | 分散処理制御システム及び分散処理制御方法 | |
US10275007B2 (en) | Performance management for a multiple-CPU platform | |
US8661293B2 (en) | Test architecture based on intelligent test sequence | |
CN110647437B (zh) | 基于pid控制器调整cpu使用率的方法、装置、终端及介质 | |
US9749960B2 (en) | Adaptable power-budget for mobile devices | |
CN103336726A (zh) | 检测Linux系统中多任务冲突的方法与装置 | |
US8214557B2 (en) | Measuring direct memory access throughput | |
CN109617175B (zh) | 移动终端充电器检测控制方法、移动终端及存储介质 | |
US20210248018A1 (en) | Adaptive runtime prioritization for component plugins | |
US10852705B1 (en) | Distributed electrical power management system | |
CN107977294B (zh) | 监控电子元件温度的方法及装置 | |
US10659574B2 (en) | Communication device, method of communication device, and non-transitory computer readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |