一种基于分组的实时操作系统双优先级任务调度节能方法技术方案

技术编号:10206554 阅读:273 留言:0更新日期:2014-07-12 07:53
本发明专利技术涉及一种基于分组的实时操作系统双优先级任务调度节能方法,不同组的任务之间,任务调度仅考虑任务的普通优先级,高优先级的任务能直接抢占低优先级任务;同组任务之间,任务调度不仅参考任务的普通优先级,还要考虑任务的阈值优先级,只有任务的普通优先级高于被抢占任务的阈值优先级时,抢占才可能发生。有益的效果是:通过给每个任务赋予两个与任务调度相关的优先级,减少任务运行中的抢占次数和上下文切换次数,降低任务运行能耗。对任务分组的方法,消除了双优先级调度对不同组任务运行的干扰,保证了系统的可靠性和实时性。

【技术实现步骤摘要】
—种基于分组的实时操作系统双优先级任务调度节能方法
本专利技术涉及基于高可靠实时系统软件节能
,特别是涉及。
技术介绍
高可靠实时系统广泛用于航空、航天、电力等重要关键领域,保证关键任务可靠、稳定、安全运行。随着计算机技术的进步,高可靠实时系统的体积越来越小,重量越来越轻,功能越来越强,不断向智能化方向发展。在无人区或者恶劣环境条件下,高可靠实时系统大多采用电池、化学反应和自然发电技术来保证能源供给,然而电池储能容量有限,化学反应和自然发电技术容易受到外界环境的干扰,不能保证高可靠实时系统能源供给的可靠性和实时性,因此研究降低高可靠实时系统运行能耗的方法,能够减少系统能量需求,提高能源供给的可靠性和稳定性。目前,学术和工业界对实时系统的节能技术主要从硬件、操作系统和应用软件三个方向进行研究,硬件上的电能管理主要作用于处理器和外设,通过使用工业电能管理标准“高级配置和电源管理接口”(ACPI),英特尔、AMD、IBM和威盛等处理器生产商采用调频和调压技术,降低处理器频率和电压,减少处理器运行能耗。外设通常具有多种运行模式,每种模式消耗的电能不同,当外设满负荷运行时,通常处于高能耗模式,当外设空闲时,为了节省电能,它将从高能耗模式转换到低能耗模式,由于外设模式转换过程也会带来电能开销,因此应用于外设的节能技术主要在于如何优化外设模式转换,常用的外设能耗模型是能耗状态机(PSM)。操作系统层的节能技术主要是动态电能管理(DPM)和任务调度技术的结合,根据任务的执行时间、截止期和周期等属性,在保证任务可调度性的前提下,动态调整处理器的频率,降低处理器的速度,延长任务的执行时间,进而减少处理器等硬件资源的空闲时间,降低系统能耗。应用软件节能技术种类较多,主要对系统中耗能构件进行管理,如调整屏幕背光强度,管理系统中任务的运行,配置系统能耗需求等。高可靠实时系统具有高可靠和强实时性要求,上面的节能技术大多利用了 ACPI接口对处理器等硬件资源的电压和频率进行调整,然而,调频和调压技术会对系统的可靠性造成一定的影响,难以保证系统运行的可靠性和实时性,因此上文的节能技术难以适应高可靠实时系统的需求。
技术实现思路
本专利技术的目的在于克服上述已有节能方法采用调频、调压带来的可靠性低,实时性差的问题,提供,减少实时操作系统特定分组的任务上下文切换次数,在降低系统能耗的同时满足高可靠实时系统的可靠性和实时性需求。,其特征在于:双优先级定义:在任务控制块中为任务定义两个运行时优先级:普通优先级和阈值优先级,并且满足阈值优先级不低于普通优先级;基于分组的双优先级任务调度方法步骤如下:步骤1:首先,根据上文对任务的定义,将任务划分为系统任务和自定义任务;所述系统任务指为操作系统提供系统功能服务,运行于操作系统中的服务程序;所述自定义任务指由用户开发运行或安装于操作系统平台之上,为用户提供特定服务功能的应用程序;步骤2:对自定义任务:根据其优先级高低做分组操作,以自定义任务的优先级范围为[Min, Max],当将[Min, Max]中每一级优先级对应的自定义任务各分为一组时,自定义任务最多分为Max-Min+Ι组;当将[Min, Max]中所有自定义任务全部分为一组时,自定义任务最少分为I组;对系统任务,不论其优先级高低,将其全部分为I组;步骤3:最后,整个系统的任务分组数等于自定义任务的分组数与系统任务分组数之和,即分组数处于[2,Max-Min+2]之间。本专利技术提出的基于分组的实时操作系统双优先级任务调度节能方法,不同组的任务之间,任务调度仅考虑任务的普通优先级,高优先级的任务能直接抢占低优先级任务;同组任务之间,任务调度不仅参考任务的普通优先级,还要考虑任务的阈值优先级,只有任务的普通优先级高于被抢占任务的阈值优先级时,抢占才可能发生。本专利技术与
技术介绍
相比,具有的有益的效果是:(I)通过给每个任务赋予两个与任务调度相关的优先级,减少任务运行中的抢占次数和上下文切换次数,降低任务运行能耗。(2)对任务分组的方法,消除了双优先级调度对不同组任务运行的干扰,保证了系统的可靠性和实时性。【附图说明】图1是基于分组的双优先级任务调度结构图;图2是基于分组的双优先级任务调度流程图;图3是任务上下文切换计算时间的统计分布图。【具体实施方式】本实施例基于分组的双优先级任务调度方法如下:基于分组的双优先级任务调度方法由双优先级和分组两个步骤组成,每个步骤如下所示:2a)双优先级定义在任务控制块中为任务定义两个运行时优先级:普通优先级和阈值优先级。并且满足阈值优先级不低于普通优先级。普通优先级与阈值优先级在任务创建时被初始化,任务的普通优先级继承了其父的普通优先级的值,待任务开始运行时,通过系统调用对普通优先级和阈值优先级重新赋值。确定阈值优先级的算法过程:(I)初始化任务属性值,按普通优先级从低到高为任务排序;(2)取优先级最低的任务,计算该任务在当前属性下的最坏响应时间;(3)判断该任务的最坏响应时间与截止期的大小;(4)如果小于截止期,则阈值优先级分配成功,如果所有任务已分配完毕,则进入(6),否则返回(2)继续分配下一个任务;(5)如果大于等于截止期,则提高阈值优先级,如果阈值优先级高于最大值,则分配不成功,程序结束,否则返回(3)继续执行;( 6 )所有任务分配成功,程序结束。2b)任务分组定义1:系统任务指为操作系统提供系统功能服务,运行于操作系统中的服务程序,如时钟中断,调度程序,驱动程序等。定义2:自定义任务指由用户开发运行或安装于操作系统平台之上,为用户提供特定服务功能的应用程序,如各种控制程序等。任务分组的过程如下:(I)首先,根据上文对任务的定义,将任务划分为系统任务和自定义任务;(2)在(I)中分组的基础上,对自定义任务,根据其优先级高低对其继续做进一步分组操作,假设自定义任务的优先级范围为[Min, Max],如果将[Min, Max]中每一级优先级对应的自定义任务各分为一组,则自定义任务最多可以分为Max-Min+Ι组;如果将[Min, Max]中所有自定义任务全部分为一组,则自定义任务最少可以分为I组;(3)对系统任务,不论其优先级高低,将其全部分为I组;(4)最后,整个系统的任务分组数等于自定义任务的分组数与系统任务分组数之和,即分组数处于[2,Max-Min+2]之间。自定义任务与系统任务的区别方法如下:在任务控制块中定义自定义任务标志Is_Defined, Is_Def ined默认值为O,如果任务为自定义任务,则将Is_Defined置为I。根据上文分组方法,令Max-Min+1 = n,按照任务优先级高低和自定义与否将系统中所有任务最多分为n+1组,任务的分组参考图1实现如下:分组1:如果任务标志Is_Def ined为0,则该任务为系统任务,将其加入系统任务组,记为G1 ;分组2:如果任务优先级pri e L1且任务标志IS_Defined为1,则该任务为L1级自定义应用任务,将其加入L1级自定义应用任务组,记为G2 ;......分组η:如果任务优先级pri e Ln且任务标志Is_Def ined为I,则该任务为Ln级自定义应用任务,将其加入Ln级自定义应用任务组,记为G本文档来自技高网
...

【技术保护点】
一种基于分组的实时操作系统双优先级任务调度节能方法,其特征在于:双优先级定义:在任务控制块中为任务定义两个运行时优先级:普通优先级和阈值优先级,并且满足阈值优先级不低于普通优先级;基于分组的双优先级任务调度方法步骤如下:步骤1:首先,根据上文对任务的定义,将任务划分为系统任务和自定义任务;所述系统任务指为操作系统提供系统功能服务,运行于操作系统中的服务程序;所述自定义任务指由用户开发运行或安装于操作系统平台之上,为用户提供特定服务功能的应用程序;步骤2:对自定义任务:根据其优先级高低做分组操作,以自定义任务的优先级范围为[Min,Max],当将[Min,Max]中每一级优先级对应的自定义任务各分为一组时,自定义任务最多分为Max‑Min+1组;当将[Min,Max]中所有自定义任务全部分为一组时,自定义任务最少分为1组;对系统任务,不论其优先级高低,将其全部分为1组;步骤3:最后,整个系统的任务分组数等于自定义任务的分组数与系统任务分组数之和,即分组数处于[2,Max‑Min+2]之间。

【技术特征摘要】
2013.12.16 CN 201310692915.91.一种基于分组的实时操作系统双优先级任务调度节能方法,其特征在于:双优先级定义:在任务控制块中为任务定义两个运行时优先级:普通优先级和阈值优先级,并且满足阈值优先级不低于普通优先级;基于分组的双优先级任务调度方法步骤如下: 步骤1:首先,根据上文对任务的定义,将任务划分为系统任务和自定义任务;所述系统任务指为操作系统提供系统功能服务,运行于操作系统中的服务程序;所述自定义任务指由用户开发运行或安装...

【专利技术属性】
技术研发人员:董云卫顾斌葛永琪杨春鑫
申请(专利权)人:西北工业大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1