CN101290509B - 一种嵌入式系统低功耗实时任务的调度方法 - Google Patents

一种嵌入式系统低功耗实时任务的调度方法 Download PDF

Info

Publication number
CN101290509B
CN101290509B CN200710074074XA CN200710074074A CN101290509B CN 101290509 B CN101290509 B CN 101290509B CN 200710074074X A CN200710074074X A CN 200710074074XA CN 200710074074 A CN200710074074 A CN 200710074074A CN 101290509 B CN101290509 B CN 101290509B
Authority
CN
China
Prior art keywords
task
time
current task
current
power consumption
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.)
Expired - Fee Related
Application number
CN200710074074XA
Other languages
English (en)
Other versions
CN101290509A (zh
Inventor
谢世波
杨永田
王继刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nantong gentong Intelligent Equipment Co., Ltd.
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN200710074074XA priority Critical patent/CN101290509B/zh
Publication of CN101290509A publication Critical patent/CN101290509A/zh
Application granted granted Critical
Publication of CN101290509B publication Critical patent/CN101290509B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02E60/10Energy storage using batteries

Landscapes

  • Power Sources (AREA)

Abstract

本发明公开了一种嵌入式系统低功耗实时任务的调度方法,1、划分实时任务集中各任务的强制执行部分和可选执行部分;2、确定任务优先级队列,并选择任务优先级队列的队首为当前任务;3、运行当前任务的强制执行部分;4、当前任务的强制执行部分运行结束后,运行其可选执行部分,若当前任务运行结束或其截止时间到达,则进入步骤5;5、释放所述当前任务,若当前任务为任务优先级队列的队尾,则结束调度,否则选择任务优先级队列中当前任务的下一个任务为新的当前任务,并回到步骤3。本发明将系统任务划分为强制执行部分和可选执行部分两部分来保证系统低功耗和实时性之间的平衡,不仅使任务满足其时间限制条件,而且还可有效减少系统功耗。

Description

一种嵌入式系统低功耗实时任务的调度方法
技术领域
本发明涉及一种嵌入式系统任务的调度方法,尤其是一种嵌入式系统低功耗实时任务的调度方法。
背景技术
对嵌入式系统来说,能耗最小化已成为系统设计过程中一个最重要也是最具有挑战性的问题。该挑战来自于以下几个因素:第一,越来越多的手持设备系统利用电池供电,因此必须通过降低功耗来延长电池的寿命;第二,半导体工业的迅速发展在使系统集成度和时钟频率得到显著提高的同时也导致了系统的功耗急剧上升,这将带来热量释放的问题;第三,能量价格的上浮、绿色电器的深入人心以及人们对环境问题的关心程度越来越高,也进一步说明了系统低功耗设计的重要性。
目前,DPM(Dynamic Power Management,动态电源管理)和DVS(Dynamic Voltage Scaling,动态电压调节)已经成为嵌入式系统设计过程中比较通用的低功耗设计策略。由于系统在运行过程中并不会一直处于峰值性能状态而且工作负载具有非静态性,这就为系统能耗的自适应降低提供了可能性。DPM的本质就是根据设备工作负载的变化来切换其工作状态,以达到系统能耗的最小化。然而,现有的DPM策略大多是简单地采用直接关闭设备的方法来实现工作状态的切换,在这一过程中系统会在能耗和延迟方面产生不可避免的损失;如果设备没有经历足够长的空闲状态时间,那么关闭设备不仅不会带来设备能耗的降低,反而会带来系统能耗的增大以及性能的损失。随着商用CMOS(Complementary Metal-Oxide Semiconductor,互补金属氧化物半导体)芯片电源供给技术的发展,处理器内核的工作电压已经能够根据具体应用的时间限制发生相应变化;而高效DC-DC(DirectCurrent-Direct Current,直流-直流)电压转换器的出现也为处理器内核的动态电压调节提供了条件。这些技术避免了直接关闭设备,大大减少了系统在切换工作状态时产生的功耗,有效地弥补了DPM技术的缺陷。同时,在一些嵌入式实时系统中任务需要满足功能性和实时性两方面的需求,也就是说,任务的正确性不仅依赖于计算的正确性,还依赖于它是否能够按时完成任务。基于DVS的任务调度策略可以根据任务的紧迫程度来动态调节处理器运行电压,以达到任务实时响应时间和系统低能耗之间的平衡。
从目前公开的采用DVS的任务调度方法来看,都是基于系统硬实时调度理论,即系统中每一个任务必须在其截止时间内产生逻辑正确的结果,任务要么在截止时间到来前完全结束,要么完全失败。而在实际情况中,并不是所有的实时任务都需要满足这个要求,实时任务常常可以在较短的运行时间内获得满足用户最低需要的输出,而完全运行则可获得最优结果。例如,在雷达跟踪系统中,对信号的处理时间越长,被跟踪目标的坐标越精确。当任务由于某些原因没有能够在截至时间前完成,如果输出满足用户规定的最低精度,其结果仍可以接受。即强实时调度理论通过假设最坏情况场景来获得可预测性,常常难以保证实际系统低功耗与实时性之间的平衡。
发明内容
本发明要解决的技术问题是提供一种能保证嵌入式系统低功耗和实时性之间平衡的嵌入式系统低功耗实时任务的调度方法。
本发明解决其技术问题所采用的技术方案是:
一种嵌入式系统低功耗实时任务的调度方法,包括以下步骤:
1.1划分实时任务集中各任务的强制执行部分和可选执行部分,确定各任务的截止时间,并确定运行所述各任务强制执行部分所需的强制执行时间;
1.2根据所述实时任务集中各任务的强制执行时间与对应任务的截止时间确定任务优先级队列,并选择所述任务优先级队列的队首任务为当前任务;
1.3运行所述当前任务的强制执行部分;
1.4所述当前任务的强制执行部分运行结束后,运行所述当前任务的可选执行部分,若所述当前任务运行结束或所述当前任务的截止时间到达,则进入步骤1.5;
1.5释放所述当前任务,若所述当前任务为所述任务优先级队列的队尾任务,则结束任务的调度,否则选择所述任务优先级队列中所述当前任务的下一个任务为新的当前任务,并回到步骤1.3。
上述方案中,所述步骤1.1中所述强制执行时间的确定是根据处理器提供的最高速率运行所述实时任务集中各任务的强制执行部分而得到的。
上述方案中,所述步骤1.2包括以下步骤:
3.1将所述各任务的强制执行时间与对应任务的截止时间相比较,选择所述强制执行时间小于所述截止时间的任务组成调度任务集合;
3.2根据所述强制执行时间与所述截止时间之间的差值的绝对值,将所述调度任务集合中各任务按照所述差值的绝对值的递增顺序得到任务优先级队列,并选择所述队列的队首任务为当前任务。
上述方案中,所述步骤1.3中运行所述当前任务的强制执行部分的速率为处理器提供的最高速率。
上述方案中,所述步骤1.4中运行所述当前任务的可选执行部分的速率为处理器提供的非最高速率。
上述方案中,所述处理器为可变电压处理器。
本发明的有益效果主要表现在:本发明提供的技术方案采用将系统任务划分为强制执行部分和可选执行部分两部分的非精确计算理论来保证系统低功耗和实时性之间的平衡,在处理器高电压运行时首先产生一个最低质量的输出结果,然后通过额外的低电压计算提炼这些结果,给用户提供一个非精确但适度的可以接受的结果,这不仅使任务满足其时间限制条件,而且还可有效减少系统功耗。即使在不可预测的事件出现的情况下,也能保证每个任务优先输出的最低质量。实现过程中采用简单的调度策略而无需其它的辅助结构,简单方便。
附图说明
图1为本发明所述调度方法的流程图;
图2为KLinux的软件体系结构图;
图3为本发明一实施例的任务集调度状态图。
具体实施方式
本发明所提出的方法是嵌入式实时操作系统内核的一部分,下面以Embsys KLinux嵌入式实时操作系统,基于AMD Athlon4处理器的硬件平台环境为例,说明本发明任务调度方法的实现方案。
AMD(超威半导体)的PowerNow!技术运用分段式的低频率和低电压,能够提供了可变的处理器运行速度,大大提高了能量运用的效率。硬件平台采用的是1.1GHz的AMD移动Athlon4处理器,它的核心电压可以在1.2V到1.4V的范围内以0.05V的增量连续变化。尽管更低的时钟频率可以使用,但对于每个核心电压都有一个预定的最大时钟频率。表1为Athlon4处理器电源状态设置情况。本实施例即使用表1所示的电源状态和电压设置。
Figure S07174074X20070522D000051
表1
在不同电源状态上产生的功耗可以采用CMOS功耗等式来计算,即 P = faC V dd 2 ,等式中P是能量,f是运行频率,a是平均转换频率,C是转换电容,Vdd是运行电压。对于相同的处理器和软件,转换容量和平均转换频率是固定的,所以我们只需要考虑运行频率与核心电压的平方。由表1所列数据通过计算可知,电源状态2所产生的功耗大约是电源状态1所产生功耗的76%,电源状态3产生的功耗则占状态1的51%,而该处理器12V的最低电源配置仅仅消耗最高电源状态20%的能量。可见,处理器电源电压的降低会大大减少系统功耗。
嵌入式系统能量驱动的主要目标是为了在应用程序、操作系统、底层硬件之间产生连续的对话环境,这个对话环境能够在可行的能量限制下建立功能和性能的预期,中兴Embsys KLinux操作系统就是基于这种理解而实现的,下面我们简单描述一下KLinux的软件体系结构。
如图2所示,运行在AMD硬件平台上的KLinux嵌入式实时操作系统采用分层式体系结构,主要的软件层次从上到下分别包括:能量驱动API(Application Programmer Interface,应用程序接口)、K-Libc(KLinux C函数)库;KTH(Kernel Thread,内核线程)库、修改后的Linux标准内核以及能量驱动HAL(Hardware Abstract Layer,硬件抽象层)。总的说来,上面的软件层作为操作系统和应用程序之间的接口,下面的软件层为操作系统提供了与能量相关的硬件抽象,这两层通过相应的能量驱动操作系统服务连接。
在最上面的软件层,能量驱动API为应用程序提供了关于能量驱动的功能调用,这部分的某些功能是特别针对于特定的能量调度技术;嵌入式应用程序调用API接口函数并利用一系列的服务,使得在执行自己特定的功能中更为有效地使用能量。能量驱动API层包含以下主要的函数接口:用于设置与实时性相关的参数的创建任务实例和类型接口、通知任务开始和结束接口和通知应用程序由操作系统预测的执行时间和告知操作系统由应用程序估计的预测执行时间接口。
K-Libc库是标准Libc库的一个子集,它的主要功能是为上层应用提供标准的C语言函数库,方便应用程序更有效地调用操作系统功能。
KTH库负责嵌入式强实时操作系统所需的基本功能管理,包括线程管理、信号量管理、内存管理、日志机制以及电源管理。KTH库为应用程序提供了一条通道,以便访问操作系统内核和能量驱动相关操作系统服务。无法在操作系统内核中实现的某些功能也在这层被实现(如:创建可以帮助操作系统管理电源的线程)。在KTH库中,提供了操作与能量驱动调度策略相关信息的函数,这些调度策略在内核中运行。
为提供修改后的操作系统内核与底层能量驱动硬件之间的接口,KLinux中还定义了能量驱动HAL。能量驱动HAL为操作系统提供了使用与能量相关硬件的“手柄”,这种方式也使得能量驱动HAL独立于硬件。能量驱动HAL函数可以控制处理器频率、电压层次和系统提供的低能量状态。这些函数能够被操作系统内核的调度器所调用,用于降低处理器速度或关闭处理器。
给出一个在系统中运行的实时任务集,任务集中每一个任务都包含以下参数:
(1)截止时间,任务的终止时间,在此之后,若该任务还未完成,也不再调度;
(2)任务强制执行部分长度,任务中必须要完成的指令周期数目;
(3)任务可选执行部分长度,任务为提高结果精度,可以选择执行的指令周期数目。
则如图2所示,实时任务的调度按下述方法进行:
首先,划分实时任务集中各任务的强制执行部分和可选执行部分,确定各任务的截止时间,KLinux系统内核的调度器根据可变电压处理器提供的最高速率运行确定运行各任务强制执行部分所需的强制执行时间,并将各任务的强制执行时间与对应任务的截止时间相比较,选择所述强制执行时间小于所述截止时间的任务组成调度任务集合,且根据所述强制执行时间与所述截止时间之间的差值的绝对值,将调度任务集合中各任务按照差值的绝对值的递增顺序得到任务优先级队列,此时,调度器会选择任务优先级队列中的队首任务并准备运行。
当前任务运行时,调度器从当前任务中获取该任务的强制执行部分,设置可变电压处理器以最高电压提供的速度加以运行。当前任务的强制执行部分运行结束后,可变电压处理器会以较低电压提供的速度运行其可选执行部分。若当前任务运行结束或所述当前任务的截止时间到达,则释放当前任务。此时,若当前任务为任务优先级队列的队尾,则结束任务的调度,否则调度器将选择任务优先级队列中当前任务的下一个任务,作为新的当前任务并再次运行。
测试中采用在单电源状态下运行结果作为比较版本,即在单一的电源状态1上运行任务集,这样同时也能测试出完成一定的工作量系统所需的花费最大能量开销。试验中,采用了两种可变电压处理器电压提供方式进行测试,第一种可变电压处理器电压提供方法使用了700和1100MHz的处理器运行频率,第二种则使用了900和1100MHz的处理器运行频率,通过这两种方式可以更好地观察在不同电源状态下任务执行的精度和系统功耗降低的效果。可变电压处理器的利用率从10%到80%以10%的增量变化。图3为在第一种可变电压处理器电压提供方式下一个具有8个任务的随机任务集的运行状态,从图中可以看出,在满足任务截止时间和最低执行结果精度的前提下,本发明的任务调度方法可尽可能地提炼这些结果,并有效地控制能量消耗。测试结果表明,本发明方法在处理器可变电压方式下产生的功耗要比无电源管理的最早期限优先调度策略产生的功耗低5%-20%,大大减少了系统能量的消耗。而且,第一种处理器电压提供方式产生的功耗要比第二种更小,同时,第二种处理器电压提供方式对任务的执行精度要高于第一种电压提供方式。

Claims (5)

1.一种嵌入式系统低功耗实时任务的调度方法,其特征在于包括以下步骤:
1.1划分实时任务集中各任务的强制执行部分和可选执行部分,确定各任务的截止时间,并确定运行所述各任务强制执行部分所需的强制执行时间;
1.2根据所述实时任务集中各任务的强制执行时间与对应任务的截止时间确定任务优先级队列,并选择所述任务优先级队列的队首任务为当前任务;
1.3运行所述当前任务的强制执行部分;
1.4所述当前任务的强制执行部分运行结束后,运行所述当前任务的可选执行部分,若所述当前任务运行结束或所述当前任务的截止时间到达,则进入步骤1.5;
1.5释放所述当前任务,若所述当前任务为所述任务优先级队列的队尾任务,则结束任务的调度,否则选择所述任务优先级队列中所述当前任务的下一个任务为新的当前任务,并回到步骤1.3;
其中所述步骤1.2包括以下步骤:
1.21将所述各任务的强制执行时间与对应任务的截止时间相比较,选择所述强制执行时间小于所述截止时间的任务组成调度任务集合;
1.22根据所述强制执行时间与所述截止时间之间的差值的绝对值,将所述调度任务集合中各任务按照所述差值的绝对值的递增顺序得到任务优先级队列,并选择所述队列的队首任务为当前任务。
2.如权利要求1所述的嵌入式系统低功耗实时任务的调度方法,其特征在于所述步骤1.1中所述强制执行时间的确定是根据处理器提供的最高速率运行所述实时任务集中各任务的强制执行部分而得到的。
3.如权利要求2所述的嵌入式系统低功耗实时任务的调度方法,其特征在于所述步骤1.3中运行所述当前任务的强制执行部分的速率为处理器提供的最高速率。
4.如权利要求3所述的嵌入式系统低功耗实时任务的调度方法,其特征在于所述步骤1.4中运行所述当前任务的可选执行部分的速率为处理器提供的非最高速率。
5.如权利要求2至4其中之一所述的嵌入式系统低功耗实时任务的调度方法,其特征在于:所述处理器为可变电压处理器。
CN200710074074XA 2007-04-19 2007-04-19 一种嵌入式系统低功耗实时任务的调度方法 Expired - Fee Related CN101290509B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200710074074XA CN101290509B (zh) 2007-04-19 2007-04-19 一种嵌入式系统低功耗实时任务的调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200710074074XA CN101290509B (zh) 2007-04-19 2007-04-19 一种嵌入式系统低功耗实时任务的调度方法

Publications (2)

Publication Number Publication Date
CN101290509A CN101290509A (zh) 2008-10-22
CN101290509B true CN101290509B (zh) 2012-01-18

Family

ID=40034802

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710074074XA Expired - Fee Related CN101290509B (zh) 2007-04-19 2007-04-19 一种嵌入式系统低功耗实时任务的调度方法

Country Status (1)

Country Link
CN (1) CN101290509B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102023895A (zh) * 2010-11-25 2011-04-20 广东雅达电子股份有限公司 一种具有优先级任务切换的单片机编程方法
CN105467873B (zh) * 2015-11-27 2018-04-17 北京友信宏科电子科技有限公司 一种车辆交流电机控制器的任务调度方法及装置
CN108073446B (zh) * 2016-11-10 2020-11-17 华为技术有限公司 超时预判方法及装置
CN106708242B (zh) * 2016-12-08 2019-06-04 华侨大学 一种硬实时系统能耗最优方法
CN111198765B (zh) * 2019-12-31 2023-08-04 富联裕展科技(河南)有限公司 运算资源分配和管理方法及代理服务器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1409209A (zh) * 2001-09-24 2003-04-09 深圳市中兴通讯股份有限公司上海第二研究所 一种多任务实时操作系统的实现方法
CN1877534A (zh) * 2006-06-30 2006-12-13 浙江大学 一种嵌入式实时文件系统任务调度的实现方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1409209A (zh) * 2001-09-24 2003-04-09 深圳市中兴通讯股份有限公司上海第二研究所 一种多任务实时操作系统的实现方法
CN1877534A (zh) * 2006-06-30 2006-12-13 浙江大学 一种嵌入式实时文件系统任务调度的实现方法

Also Published As

Publication number Publication date
CN101290509A (zh) 2008-10-22

Similar Documents

Publication Publication Date Title
CN101290585B (zh) 一种嵌入式系统实时任务的调度方法
CN101290509B (zh) 一种嵌入式系统低功耗实时任务的调度方法
CN100416463C (zh) 面向嵌入式系统低功耗实时任务参数模型调度方法
Lee et al. Voltage-clock scaling for low energy consumption in real-time embedded systems
CN100465857C (zh) 一种面向嵌入式系统低功耗实时任务调度的简化方法
CN101790709A (zh) 动态核心切换
CN108984292A (zh) 混合关键系统固定优先级周期任务能耗优化方法
CN101676833A (zh) 通过微架构带宽抑制进行处理器功耗控制和降低电压
CN101719013A (zh) 一种降低有多个处理单元单板功耗的方法及装置
CN101162405A (zh) 动态降低cpu功耗的方法
CN109324880A (zh) 一种适用于实时系统周期任务模型的低功耗调度方法
CN103049314A (zh) 一种开放式系统实时调度方法
Xiang et al. Run-time management for multicore embedded systems with energy harvesting
CN106897133A (zh) 一种基于pbs作业调度管理集群负载的实现方法
CN100590571C (zh) 实时嵌入式系统edf低功耗调度的msr方法
CN101685335A (zh) 基于seda的应用服务器及其节能装置和方法
Yao et al. A dual delay timer strategy for optimizing server farm energy
CN101221528B (zh) 一种嵌入式操作系统调度性能的测试方法
CN105117281A (zh) 一种基于任务申请信号和处理器内核执行代价值的任务调度方法
CN102253708B (zh) 一种微处理器硬件多线程动态变频控制装置及其应用方法
CN106933325B (zh) 一种固定优先级io设备能耗管理方法
CN105700665B (zh) 基于嵌入式系统功耗模式的选择方法及系统,嵌入式系统
Shieh et al. Energy-efficient tasks scheduling algorithm for dual-core real-time systems
CN106293000B (zh) 一种面向云环境的虚拟机存储子系统节能方法
CN106293009B (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
ASS Succession or assignment of patent right

Owner name: NANTONG GENTONG INTELLIGENT EQUIPMENT CO., LTD.

Free format text: FORMER OWNER: ZTE CORPORATION

Effective date: 20141106

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 518057 SHENZHEN, GUANGDONG PROVINCE TO: 226000 NANTONG, JIANGSU PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20141106

Address after: 226000 Jiangsu city of Nantong province Tongzhou District Nantong high tech Zone Xingyuan Road No. 299

Patentee after: Nantong gentong Intelligent Equipment Co., Ltd.

Address before: 518057 Nanshan District science and Technology Industrial Park, Guangdong high tech Industrial Park, ZTE building

Patentee before: ZTE Corporation

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120118

Termination date: 20160419

CF01 Termination of patent right due to non-payment of annual fee