CN101135927A - 一种面向嵌入式***低功耗实时任务调度的简化方法 - Google Patents
一种面向嵌入式***低功耗实时任务调度的简化方法 Download PDFInfo
- Publication number
- CN101135927A CN101135927A CNA2007101474734A CN200710147473A CN101135927A CN 101135927 A CN101135927 A CN 101135927A CN A2007101474734 A CNA2007101474734 A CN A2007101474734A CN 200710147473 A CN200710147473 A CN 200710147473A CN 101135927 A CN101135927 A CN 101135927A
- Authority
- CN
- China
- Prior art keywords
- real
- time
- task
- time task
- frequency
- 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
- 238000000034 method Methods 0.000 title claims abstract description 21
- 230000015572 biosynthetic process Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 abstract description 13
- 239000012141 concentrate Substances 0.000 description 3
- 238000004134 energy conservation Methods 0.000 description 3
- 210000004940 nucleus Anatomy 0.000 description 3
- 210000004027 cell Anatomy 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- HBBGRARXTFLTSG-UHFFFAOYSA-N Lithium ion Chemical compound [Li+] HBBGRARXTFLTSG-UHFFFAOYSA-N 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 229910001416 lithium ion Inorganic materials 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Power Sources (AREA)
Abstract
本发明公开了一种面向嵌入式***低功耗实时任务调度的简化方法。本发明提供了一种新的方法用来建模、解决并进行优化嵌入式***低功耗实时任务调度问题。本发明通过利用实时动态调频调压技术和实时时间片轮转模型,达到低功耗实时调度。该发明基于一个实用时间片轮转的任务模型,通过在模型中加入任务的实时性限制来保证任务地实时性。本发明对实时任务的时间片轮换的调度方法进行了简化,在原始的调度方法中,加入了处理器频率控制参数,使***在运行过程中,通过计算任务的实时需求,获得***运行最低频率。任务在执行过程中,操作***使用动态调频调压技术,根据计算结果,实时地调整处理器的状态,以达到节能地目的。
Description
技术领域
本发明涉及基于嵌入式***软件节能技术领域,特别是涉及一种面向嵌入式***低功耗实时任务调度的简化方法。
背景技术
在便携式嵌入式设备电源管理领域,目前的困难在于既要满足便携式终端对电源供电的要求,又要做到占用空间小、重量轻和供电时间更长。下一代消费类电子产品的电源解决方案重点应该集中在硬件和软件两方面技术,包括:(1)在小巧外形尺寸下,如何实现所需电源性能的工艺和技术,涉及热管理、降噪、电池管理和功能整合等技术;(2)动态功率管理技术,它取决于CPU性能、软件、中间件以及用户对更换电池的时间间隔等要求;(3)动态功率管理技术对操作***内核和驱动器,以及应用编程接口(API)对驱动器、中间件和应用本身的影响。
现在嵌入式设备的功能变得越来越强大,功能也越来越丰富。随着嵌入式设备功能越来越多,用户对嵌入式设备电池的能量需求也越来越高,现有的锂离子电池已经越来越难以满足消费者对正常使用时间的要求。对此,业界主要采取两种方法,一是开发具备更高能量密度的新型电池技术,如燃料电池,在可以预见的5年内,电池技术不可能有很大的突破;二是在电池的能量转换效率和节能方面下功夫。在目前新的高能电池技术(如燃料电池)仍不成熟的情况下,下一代手持设备的电源管理只能从提高电源利用率和降低功耗这二个方面着手。
如何延长电池的使用寿命,以及尽量减少电池能量的消耗已经成为嵌入式领域的一个研究热点。现在主要集中在硬件设计和软件优化两方面。其中软件优化方面现在主要包括***软件和应用软件两方面。***软件主要集中在编译器和操作***内核两块。
在操作***领域,现在主要的电源管理方法是利用操作***内核,动态的调整***处理器和总线的频率,降低***的整体能耗。而且***可以通过动态频率指令改变***状态,是***处于低功耗状态,以达到节能的目的。在编译器方面,现在主要通过编译器在编译应用程序阶段,对代码进行优化,使代码尽量的紧凑以及访问设备尽量集中,以达到节能的目的。
上面的方法中,实现起来都需要比较繁琐的过程,而且没有考虑实时性,在现在嵌入式***领域的应用存在一定的限制。
发明内容
本发明的目的在于提供一种面向嵌入式***低功耗实时任务调度的简化方法。
本发明解决其技术问题所采用的技术方案是:
1)实时任务的时间片调度:
当实时任务队列中,存在多个实时任务时,***将通过时间片的方式对***中的任务进行调度,以满足各个实时任务的需要;
时间片调度的方式是将处理器的运行时间划分等分的时间片,当任务在处理器上运行时,只能运行一个时间片长度,当时间片用完后,被强制停止执行,换下一个任务执行;
2)新实时任务的频率比计算:
在实时***中,一个实时任务它有以下几个参数是确定:任务的开始时间、实时任务的最终期限、以及任务的运行时间;
频率比就是将上面的三个参数进行融合所产生的,频率比的计算方法如下面的公式所示:
pf=p/(e-b)
其中
pf是实时任务的频率比,
p是实时任务实际需要运行的时间,
e是实时任务的最终期限,
b是实时任务的开始时间;
3)总实时任务的频率比计算:
当新的实时任务加入到任务运行队列,***将计算新实时任务的频率比计算,然后计算总任务的频率比;
总实时任务频率比的计算方法如下面的公式所示:
pfsum=pfsum+T.pf
其中pfsum是总实时任务的频率比,它的初始值为0,
“=”表示为赋值,即pfsum的新值等于pfsum原来得值加上T.pf,
T是新的实时任务的控制字,
pf是新实时任务的频率比,
T.pf表示实时任务T的频率比;
4)处理器频率设置:
调度***根据总实时任务的频率比计算出一个新的频率值,当新的频率值大于现在的频率时,将处理器的频率设置成新计算出来的频率,否则不变。
本发明与背景技术相比,具有的有益的效果是:
本发明将操作***的实时性和低功耗调度工作相结合,利用现有操作***的实时性来保证任务的实时性要求。本发明通过将低功耗调度方法融入到实时的任务调度中,在保证认识实时性的同时,达到低功耗的目的,延长***电池的使用时间。
(1)实时性:应用程序在***中运行时,调度算法按照时间片轮换的方法进行调度,保证了***的实时性。
(2)稳定性:操作***将动态调整***状态的权利掌握在自己手中,而不是下放给应用程序,这样***就能在兼顾全局的情况下动态调整***的状态,保证***的稳定。
(3)实用性:利用低功耗实时任务调度的简化方法,可以尽量少的修改***的代码,达到节能目的。在经过反复的验证,这个方法可以很好的减少程序员的工作量,十分实用。
附图说明
图1是pf值原理图;
图2是整个调度***工作的流程图。
具体实施方式
在实施嵌入式***低功耗实时任务调度的简化方法时,操作***在调度过程中,考虑了实时和节能两个约束。
嵌入式***低功耗实时任务调度的简化方法具体实现流程如下。
1)实时任务的时间片调度:
当实时任务队列中,存在多个实时任务时,***将通过时间片的方式对***中的任务进行调度,以满足各个实时任务的需要。
时间片调度的方式是将处理器的运行时间划分等分的时间片,当任务在处理器上运行时,只能运行一个时间片长度,当时间片用完后,被强制停止执行,换下一个任务执行。
当处理器上的任务被调度出去后,调度器选择一个新的任务,并分配时间片给这个新的任务。在这个时间片时间内,这个任务将占有处理器的资源,直到时间片用完或者任务完成。当任务的时间片用完后,任务将被暂时剥夺使用处理器的权利,这个任务将被放到运行队列的末尾,等待下一次被调度到处理器上运行。同时,另外一个任务将被调度到处理器上执行。时间片的轮换保证了所有任务都有运行的机会。
2)新实时任务的频率比计算:
在实时***中,一个实时任务它有以下几个参数是确定:任务的开始时间、实时任务的最终期限、以及任务的运行时间;
频率比就是将上面的三个参数进行融合所产生的,频率比的计算方法如下面的公式所示:
pf=p/(e-b)
其中
pf是实时任务的频率比,
p是实时任务实际需要运行的时间,
e是实时任务的最终期限,
b是实时任务的开始时间;
要保证任务的实时性,***必须得保证任务在实时任务的最终期限前完成所有工作,通过确保***在实时任务的最终期限前完成任务的执行来保证***的实时性。任务实际需要运行的时间说明完成任务需要执行的时间数。
计算pf的值,可以帮助***在确保实时性的前提下,减少工作的计算量和计算复杂度。pf融合了这三个参数,并且pf也是有实际意义的,一个进程只要声称好自己的pf参数,就可以说明自己的实时性的要求。比如pf为0.1,那么就说明在如果从b到e这个进程一直在运行,处理器的频率只要设置在最高频率的1/10之一,这个任务就可以在期限前完成。
之所以可以用pf的值来确定处理器的频率,是因为pf表示一个任务从开始到结束如果一直占用处理器,处理器所需要的频率,那么如果是多个任务把它们的pf的值加起来,就是这些任务所需要的处理器频率,虽然***以分时间片的方式来分配时间,但是总的效果是一样的,如图1所示,其中图1a是实时任务T1的频率比,图1b是实时任务T2的频率比,图1c是实时任务T1+T2的总频率比。
3)总实时任务的频率比计算:
计算单个任务pf值的主要目的是为计算整个***的总实时任务频率比。当新的实时任务加入到任务运行队列,***将计算新实时任务的频率比计算,然后计算总任务的频率比。
总实时任务频率比的计算方法如下面的公式所示:
pfsum=pfsum+T.pf
其中pfsum是总实时任务的频率比,,它的初始值为0,
“=”表示为赋值,即pfsum的新值等于pfsum原来得值加上T.pf,
T是新的实时任务的控制字(控制字是操作***用来描述任务的数据结构),
pf是新实时任务的频率比,
T.pf表示实时任务T的频率比;
总实时任务频率比的计算是节能调度的基础,通过计算总实时任务的频率比可以计算出一个合理的处理器运行频率。
4)处理器频率设置:
调度***根据总实时任务的频率比计算出一个新的频率值,当新的频率值大于现在的频率时,将处理器的频率设置成新计算出来的频率,否则不变。
当***没有实时任务时,就把处理器的频率调到最低。***维持两个参数,一个是正在运行队列里的任务的pf和pfsum,另一个是***当前频率。当***有新的任务加到运行队列的时候,计算新任务的pf值。把它的pf值加到原先的pfsum里面,然后再根据新的pfsum的值确定处理器的频率,如果这个频率比现在的频率要高,那么调高处理器的频率。当***没有实时任务的时候,就把pfsum置0,处理器的频率调到最低。新处理器频率的计算公式为:
f=pfsum×fmax
其中,
f为新的处理器频率,
pfsum为正在运行队列里的任务的pf和,
fmax为处理器的最大运行频率。
调度***的整体流程图如图2所示。
Claims (1)
1.一种面向嵌入式***低功耗实时任务调度的简化方法,其特征在于:
1)实时任务的时间片调度:
当实时任务队列中,存在多个实时任务时,***将通过时间片的方式对***中的任务进行调度,以满足各个实时任务的需要;
时间片调度的方式是将处理器的运行时间划分等分的时间片,当任务在处理器上运行时,只能运行一个时间片长度,当时间片用完后,被强制停止执行,换下一个任务执行;
2)新实时任务的频率比计算:
在实时***中,一个实时任务它有以下几个参数是确定:任务的开始时间、实时任务的最终期限、以及任务的运行时间;
频率比就是将上面的三个参数进行融合所产生的,频率比的计算方法如下面的公式所示:
pf=p/(e-b)
其中
pf是实时任务的频率比,
p是实时任务实际需要运行的时间,
e是实时任务的最终期限,
b是实时任务的开始时间;
3)总实时任务的频率比计算:
当新的实时任务加入到任务运行队列,***将计算新实时任务的频率比计算,然后计算总任务的频率比;
总实时任务频率比的计算方法如下面的公式所示:
pfsum=pfsum+T.pf
其中pfsum是总实时任务的频率比,它的初始值为0,“=”表示为赋值,即pfsum的新值等于pfsum原来得值加上T.pf,
T是新的实时任务的控制字,
pf是新实时任务的频率比,
T.pf表示实时任务T的频率比;
4)处理器频率设置:
调度***根据总实时任务的频率比计算出一个新的频率值,当新的频率值大于现在的频率时,将处理器的频率设置成新计算出来的频率,否则不变。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101474734A CN100465857C (zh) | 2006-10-12 | 2007-09-14 | 一种面向嵌入式***低功耗实时任务调度的简化方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610053817.0 | 2006-10-12 | ||
CNA2006100538170A CN1936776A (zh) | 2006-10-12 | 2006-10-12 | 面向嵌入式***低功耗实时任务调度的简化方法 |
CNB2007101474734A CN100465857C (zh) | 2006-10-12 | 2007-09-14 | 一种面向嵌入式***低功耗实时任务调度的简化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101135927A true CN101135927A (zh) | 2008-03-05 |
CN100465857C CN100465857C (zh) | 2009-03-04 |
Family
ID=39160046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101474734A Expired - Fee Related CN100465857C (zh) | 2006-10-12 | 2007-09-14 | 一种面向嵌入式***低功耗实时任务调度的简化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100465857C (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101604198B (zh) * | 2009-07-10 | 2010-09-29 | 杭州电子科技大学 | 一种降低嵌入式***功耗的方法 |
CN102104656A (zh) * | 2009-12-21 | 2011-06-22 | 康佳集团股份有限公司 | 一种变频处理任务的方法及电子设备 |
CN102360246A (zh) * | 2011-10-14 | 2012-02-22 | 武汉理工大学 | 一种异构分布式***中基于自适应阈值的节能调度方法 |
CN101452404B (zh) * | 2008-12-09 | 2013-11-06 | 中兴通讯股份有限公司 | 一种嵌入式操作***的任务调度装置及方法 |
CN103645797A (zh) * | 2013-12-17 | 2014-03-19 | 武汉科技大学 | 一种基于时间片利用率的低功耗调频方法 |
CN103914348A (zh) * | 2013-01-03 | 2014-07-09 | 通用汽车环球科技运作有限责任公司 | 在实时处理器线程之间分配处理器加载的方法 |
CN105975049A (zh) * | 2016-05-05 | 2016-09-28 | 华侨大学 | 一种任务同步偶发任务低能耗调度方法 |
CN108845659A (zh) * | 2018-01-30 | 2018-11-20 | 武汉大学 | 一种功耗优先的嵌入式处理器实时任务分配方法 |
CN108958449A (zh) * | 2017-05-26 | 2018-12-07 | 中兴通讯股份有限公司 | 一种cpu功耗调整方法与装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103440171B (zh) * | 2013-08-25 | 2016-08-03 | 浙江大学 | 一种构件化硬件实时操作***的实现方法 |
CN104808770B (zh) * | 2015-04-23 | 2017-04-12 | 南京大学 | 基于动态调频的数据中心能耗管理方法及*** |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL116708A (en) * | 1996-01-08 | 2000-12-06 | Smart Link Ltd | Real-time task manager for a personal computer |
JP4016010B2 (ja) * | 2004-03-26 | 2007-12-05 | 株式会社東芝 | リアルタイムスケジューリング可能性判定方法およびリアルタイムシステム |
CN100351792C (zh) * | 2004-08-23 | 2007-11-28 | 中兴通讯股份有限公司 | 一种实时任务管理与调度方法 |
US7748003B2 (en) * | 2004-12-20 | 2010-06-29 | International Business Machines Corporation | Hard real-time response |
CN100351793C (zh) * | 2005-09-12 | 2007-11-28 | 浙江大学 | 支持osek标准的嵌入式实时操作***的任务调度方法 |
-
2007
- 2007-09-14 CN CNB2007101474734A patent/CN100465857C/zh not_active Expired - Fee Related
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101452404B (zh) * | 2008-12-09 | 2013-11-06 | 中兴通讯股份有限公司 | 一种嵌入式操作***的任务调度装置及方法 |
CN101604198B (zh) * | 2009-07-10 | 2010-09-29 | 杭州电子科技大学 | 一种降低嵌入式***功耗的方法 |
CN102104656A (zh) * | 2009-12-21 | 2011-06-22 | 康佳集团股份有限公司 | 一种变频处理任务的方法及电子设备 |
CN102360246B (zh) * | 2011-10-14 | 2014-04-09 | 武汉理工大学 | 一种异构分布式***中基于自适应阈值的节能调度方法 |
CN102360246A (zh) * | 2011-10-14 | 2012-02-22 | 武汉理工大学 | 一种异构分布式***中基于自适应阈值的节能调度方法 |
CN103914348A (zh) * | 2013-01-03 | 2014-07-09 | 通用汽车环球科技运作有限责任公司 | 在实时处理器线程之间分配处理器加载的方法 |
CN103914348B (zh) * | 2013-01-03 | 2018-04-10 | 通用汽车环球科技运作有限责任公司 | 在实时处理器线程之间分配处理器加载的方法 |
CN103645797A (zh) * | 2013-12-17 | 2014-03-19 | 武汉科技大学 | 一种基于时间片利用率的低功耗调频方法 |
CN103645797B (zh) * | 2013-12-17 | 2016-03-16 | 武汉科技大学 | 一种基于时间片利用率的低功耗调频方法 |
CN105975049A (zh) * | 2016-05-05 | 2016-09-28 | 华侨大学 | 一种任务同步偶发任务低能耗调度方法 |
CN105975049B (zh) * | 2016-05-05 | 2018-08-24 | 华侨大学 | 一种任务同步偶发任务低能耗调度方法 |
CN108958449A (zh) * | 2017-05-26 | 2018-12-07 | 中兴通讯股份有限公司 | 一种cpu功耗调整方法与装置 |
CN108845659A (zh) * | 2018-01-30 | 2018-11-20 | 武汉大学 | 一种功耗优先的嵌入式处理器实时任务分配方法 |
CN108845659B (zh) * | 2018-01-30 | 2021-06-04 | 武汉大学 | 一种功耗优先的嵌入式处理器实时任务分配方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100465857C (zh) | 2009-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101135927A (zh) | 一种面向嵌入式***低功耗实时任务调度的简化方法 | |
CN100416463C (zh) | 面向嵌入式***低功耗实时任务参数模型调度方法 | |
Cheng et al. | An energy-saving task scheduling strategy based on vacation queuing theory in cloud computing | |
US11579934B2 (en) | Scheduler for amp architecture with closed loop performance and thermal controller | |
KR101629155B1 (ko) | 전력-인식 스레드 스케줄링 및 프로세서들의 동적 사용 | |
CN101290585B (zh) | 一种嵌入式***实时任务的调度方法 | |
CN100580632C (zh) | 嵌入式***rm低功耗调度中松弛时间在线重分配方法 | |
CN102622273B (zh) | 基于自学习负载预测的集群按需启动方法 | |
Chen et al. | Procrastination for leakage-aware rate-monotonic scheduling on a dynamic voltage scaling processor | |
Gu et al. | Energy efficient scheduling of servers with multi-sleep modes for cloud data center | |
Santriaji et al. | GRAPE: Minimizing energy for GPU applications with performance requirements | |
Bhalachandra et al. | An adaptive core-specific runtime for energy efficiency | |
Mao et al. | A multi-resource task scheduling algorithm for energy-performance trade-offs in green clouds | |
CN101216727A (zh) | 嵌入式低功耗操作***中动态频率调整的映射方法 | |
CN101794169B (zh) | 基于改变控制模式进行机群***能耗管控的方法 | |
CN100590571C (zh) | 实时嵌入式***edf低功耗调度的msr方法 | |
Zeng et al. | Practical energy-aware scheduling for real-time multiprocessor systems | |
CN100377042C (zh) | 结合静态编译器和动态调频技术优化运行频率的节能方法 | |
Li et al. | Chameleon: Adapting throughput server to time-varying green power budget using online learning | |
CN1936776A (zh) | 面向嵌入式***低功耗实时任务调度的简化方法 | |
Cho et al. | A high performance load balance strategy for real‐time multicore systems | |
Wang et al. | Task migration for energy conservation in real-time multi-processor embedded systems | |
Zhao et al. | Fine-grained per-core frequency scheduling for power efficient-multicore execution | |
Chu et al. | Design a low-power scheduling mechanism for a multicore android system | |
Naik et al. | RT-DVS for power optimization in multiprocessor real-time systems |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090304 Termination date: 20120914 |