一种基于可选因子周期任务动态优先级低能耗方法与流程

文档序号:22626724发布日期:2020-10-23 19:35阅读:146来源:国知局
一种基于可选因子周期任务动态优先级低能耗方法与流程
本发明涉及嵌入式系统领域能耗优化调度方法,特别涉及一种基于可选因子周期任务动态优先级低能耗方法。
背景技术
:嵌入式系统在生活与生产过程的应用越来越广泛,也越来越普及,比如数控系统、移动pos机,笔记本电脑,常用的家电,飞机、高铁、地铁的控制系统等。嵌入式系统对实时性与可靠性有着严格的规定,对于便携式设备而言的嵌入式系统对能耗还有着极高的要求。高能耗不仅会对系统的可靠性会造成负面影响,而且会增加产品的生产成本,降低产品的使用寿命,对环境也会造成一定的损害。现有的嵌入式系统低能耗方法,主要针对单一的策略调度任务,也就是要么使用尽可能晚的策略调度任务,要么使用尽可能早的策略调度任务。而嵌入式系统的有些任务需要尽可能早的调度,而另一些任务需要尽可能晚调度。单一的调度策略已不能满足嵌入式系统任务调度的需求。技术实现要素:本发明的主要目的在于克服现有技术中的上述缺陷,提出一种基于可选因子周期任务动态优先级低能耗方法,该方法利用可选因子可以灵活的控制周期任务执行过程中的响应时间,以适应不同任务的调度需求且利用动态电压调节技术,提高了处理器速度,降低系统能耗。本发明采用如下技术方案:一种基于可选因子周期任务动态优先级低能耗方法,其特征在于,包括:根据周期任务的调度属性划分周期任务集,所述任务的调度属性包括:asap和alap;针对周期任务的调度属性,建立相应的调度队列,并按照周期任务的优先级进行调度队列的排序;根据周期任务的响应时间,结合周期任务的最大空闲时间和周期任务的空余时间,计算任务的可延迟时间;根据周期任务的时间参数,计算可选因子;根据动态优先级策略和可选因子,计算周期任务的执行速度并调度任务。优选的,根据任务的调度属性划分周期任务集;包括:根据周期任务的调度属性,将n个相互独立的周期任务划分为任务集ψs和任务集ψl,其中n为大于0的整数,所述任务集ψs包含调度属性为asap的周期任务;任务集ψl包含调度属性为alap的周期任务。优选的,针对周期任务的调度属性,建立相应的调度队列;包括:根据任务集ψs和任务集ψl,建立相对应调度队列:asap就绪队列和alap就绪队列,asap就绪队列包含所有的就绪的调度属性为asap的周期任务,alap就绪队列包含所有的就绪的调度属性为alap的周期任务,asap就绪队列和alap就绪队列都按照任务的优先级进行排序,优先级高的任务排在队列前面,优先级低的任务排在队列的后面。优选的,根据周期任务的响应时间,计算任务的可延迟时间,包括:对于调度属性为asap的周期任务,无需计算可延迟时间;调度属性为alap的周期任务tk(1≤k≤n),可延迟时间λk由下式计算:λk=min{tk,mk}其中,tk是周期任务tk的最大空闲时间,mk是周期任务tk的空余时间。优选的,根据任务的时间参数,计算可选因子,包括:周期任务ti的可选因子γi由下式计算:其中fmax,fmin,ft分别是调度属性为asap的周期任务ti的理想的最晚完成执行时间,理想的最早完成时间以及真实的完成执行时间;amax,amin,a分别是调度属性为alap的周期任务ti的理想的最晚开始执行时间,理想的最早开始执行时间以及真实的开始执行时间。优选的,根据动态优先级策略和可选因子,计算周期任务的执行速度并调度任务,具体包括:当可选因子γi=0或者γi=1时,所有周期任务都以执行速度s1=us+ul执行;当可选因子0<γi<1时,调度属性为alap的周期任务以最大处理器速度执行,调度属性为asap的周期任务的执行速度s由下式计算:其中,us和ul分别是任务集ψs和ψl的利用率;调度任务的动态优先级策略的如下:1)按照任务的优先级调度asap就绪队列中的任务,优先级高的任务优先调度;2)当asap就绪队列为空时,再调度alap就绪队列的任务,可延迟时间达到的任务先调度。由上述对本发明的描述可知,与现有技术相比,本发明具有如下有益效果:(1)本发明根据动态优先级策略和可选因子,计算周期任务的执行速度并调度任务,克服了单一的调度策略不能满足嵌入式系统任务调度的需求;(2)利用本发明提出的方法,与没有使用节能技术的方法相比,提高了处理器速度,节约了能耗,降低了产品的生产成本。附图说明图1为本发明方法的流程图示意图。具体实施方式以下通过具体实施方式对本发明作进一步的描述。参见图1,本发明的一种基于可选因子周期任务动态优先级低能耗方法,其包括如下步骤:步骤101:根据周期任务的调度属性划分周期任务集,所述任务的调度属性包括:asap和alap;考虑单处理器系统的n个相互独立的周期任务,每个周期任务ti(1≤i≤n)由三元组(ei,pi,θi)表示,ei和pi分别表示周期任务ti在最大处理器速度下最坏情况下的执行时间和周期;θi表示周期任务ti的调度属性;周期任务ti的调度属性可以分为两种:其一,尽可能早调度(asap);其二,尽可能晚调度(alap);所谓的asap是指周期任务就绪之后,只要条件允许,尽可能早的调度该任务;所谓的alap是指周期任务就绪之后,在确保周期任务不错过其截止期限的情况下,尽可能的延迟周期任务的调度;根据周期任务的调度属性,可以将这n个相互独立的周期任务划分为两个任务集ψs和ψl;任务集ψs包含调度属性为asap的周期任务;任务集ψl包含调度属性为alap的周期任务;此外,周期任务具有显性的截止期限,即其相对截止期限等于其周期。步骤102:针对周期任务的调度属性,建立相应的调度队列,并按照周期任务的优先级进行调度队列的排序;周期任务的调度属性分为asap和alap,以此属性为依据,可以得到任务集ψs和任务集ψl;与此相对应建立两个调度队列:其一,asap就绪队列;其二,alap就绪队列;asap就绪队列包含所有的就绪的调度属性为asap的周期任务;alap就绪队列包含所有的就绪的调度属性为alap的周期任务;asap就绪队列和alap就绪队列都按照任务的优先级进行排序,优先级高的任务排在队列前面,优先级低的任务排在队列的后面;优先级高的任务优先调度;任务的优先级由其截止期限确定,截止期限早的其优先级高;截止期限晚的其优先级低;任务的截止期限相同时,到达时间早的任务,其优先级越高,到达时间晚的任务其优先级越低;当任务的截止期限和到达时间都相同时,下标小的任务,其优先级越高。步骤103:根据周期任务的响应时间,结合周期任务的最大空闲时间和周期任务的空余时间,计算任务的可延迟时间。对于调度属性为asap的周期任务,需要尽可能早的执行,所以无需计算其可延迟时间;调度属性为alap的周期任务tk(1≤k≤n),其可延迟时间λk由下式计算:λk=min{tk,mk}其中,tk是周期任务tk的最大空闲时间,其值由下式计算:tk=dk-rk-ek其中,dk,rk和ek分别是周期任务tk的截止期限,到达时间和最坏情况下执行时间,mk是周期任务tk的空余时间,其值由下式计算:mk=dk-lk其中lk是周期任务tk的响应时间,其值可以通过迭代的方法由下式计算:其中,m代表迭代的次数,初始时通过迭代的方法直到因此,周期任务tk的响应时间lk等于当其响应时间超过其相对截止期限时,该任务调度不可行;hp(tk)代表优先级比周期任务tk的优先级高的任务集合。步骤104:根据任务的时间参数,计算可选因子。周期任务ti的可选因子γi由下式计算:其中fmax,fmin,ft分别是调度属性为asap的周期任务ti的理想的最晚完成执行时间,理想的最早完成时间以及真实的完成执行时间;fmax的值等于调度属性为asap的周期任务ti的截止期限,fmin的值由下式计算:fmin=ri+ei其中,ri和ei分别是调度属性为asap的周期任务ti的到达时间和最坏情况下执行时间;amax,amin,a分别是调度属性为alap的周期任务ti的理想的最晚开始执行时间,理想的最早开始执行时间以及真实的开始执行时间;amax的值由下式计算:amax=di-ei其中di和ei分别是调度属性为alap的周期任务ti的截止期限和最坏情况下执行时间;amin的值等于调度属性为alap的周期任务ti的到达时间。步骤105:根据动态优先级策略和可选因子,计算周期任务的执行速度并调度任务。动态优先级策略调度可行的条件是系统利用率小于或等于1,因此,只要周期任务以速度s执行,系统利用率不超过1,系统依然是可行的;为了降低周期任务的响应时间,且可选因子不低于给定的值,调度属性为alap的周期任务以最大处理器速度执行;调度属性为asap的周期任务的执行速度s由下式计算:其中,us和ul分别是任务集ψs和ψl的利用率;任务集ψs的利用率us由下式计算:其中,ei和pi分别是周期任务ti的最坏情况下执行时间和周期;任务集ψl的利用率ul由下式计算:其中,ek和pk分别是周期任务tk的最坏情况下执行时间和周期;调度任务的原则如下:1)按照任务的优先级调度asap就绪队列中的任务,优先级高的任务优先调度;2)当asap就绪队列为空时,再调度alap就绪队列的任务,可延迟时间达到的任务先调度。本实施例中,相互独立的周期任务集包含3个周期任务,任务的具体参数如表1所示。所有周期任务都是时刻0到达,任务集ψs={t1,t2},任务集ψl={t3};使用pxa270处理器的功耗模型,其功耗为p=0.08+1.52*s3,空闲状态的功耗为0.08;在区间[0,20]使用本发明方法调度这3个任务。通过计算可知,us=0.40,ul=0.2,s=0.50。经过就算可知,本发明方法比没有使用节能技术的方法节约大约45.97%的能耗。表1.周期任务集参数任务pieiθit151asapt2102asapt3204alap上述仅为本发明的具体实施方式,但本发明的设计构思并不局限于此,凡利用此构思对本发明进行非实质性的改动,均应属于侵犯本发明保护范围的行为。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1