基于多处理器实时调度策略研究.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于多处理器实时调度策略研究

基于多处理器实时调度策略研究   摘 要: 多处理器系统中实时调度算法起着重要的作用。在结合了RMS和EDF调度算法的基础上提出了一种含阈值的多处理器实时任务调度策略,使任务能够在阈值范围内在各处理器上进行迁移,避免了部分处理器处于空闲,部分处理器过于繁忙导致任务被挂起的现象,保证了各处理器利用率的相对平衡。   关键词: 多处理器系统; RMS调度算法: EDF调度算法; 实时任务调度模型   中图分类号: TN40?34; TP393 文献标识码: A 文章编号: 1004?373X(2013)21?0124?04   0 引 言   随着计算机技术的不断发展,对多处理器系统的需求不断增加,特别是在航空、导航领域不仅要求系统拥有良好的并行性,还要保证系统的实时性。因此,好的调度策略就显得尤为重要。在这里针对多处理器的结构提出了一种RMS和EDF算法相结合的实时任务调度模型,通过阈值的设定使任务能够在处理器上进行迁移。该调度策略充分利用了RMS和EDF算法的优点,为了充分保证实时性在模型的验证中对EDF算法做了改进,较大程度克服了EDF调度算法引起的多米诺效应,提供了较好的实时调度性能。   1 理论基础   1.1 RMS算法   为解决周期性任务,提出了速率单调调度算法(Rate Monotonic Scheduling,RMS),任务优先级的确定基于任务的周期,优先级最高的任务周期最短。当有多个任务可供执行时,周期最短的任务首先得到服务。RMS算法需要满足以下假设的前提[1]:   ①所有任务都是周期性的;   ②任务间不需要同步,没有共享资源,任务间的切换时间可忽略不计;   ③CPU必须总是执行优先级最高的任务,必须是可被抢占的。   在以上假设的基础上衡量RMS算法有效性需保证不等式(1)成立:   若把任务的优先级描述成关于它们速率的函数,其结果是一个单调递增函数。表1给出了这个上界的一些值。当任务数目增加时,调度上界收敛于ln 2。即在单处理器中它的使用率为69.3%。   RMS算法的优点是开销小,在任务的截止时间等于其周期的条件下,速率单调算法已被证明是静态最优的调度算法。   1.2 EDF算法   截止期最早的任务优先调度算法,该算法规定任务的截止???限越小,优先级越高。EDF(Earliest Deadline First)是一种动态的优先级调度算法,优先级与任务的最后截止期限成反比。理论上每个时刻都要计算处于等待调度状态的任务调度优先级,系统下个时刻调度的任务是不确定的,与系统中其他任务有关系。其调度有效性的验证需满足不等式(2)成立:   EDF的主要优点是:任务的优先级能够根据需要动态改变,使得系统适应性比较好。在软实时消息的调度上要优于静态调度算法。   EDF的缺陷是:如果一个实时任务在其执行时间之前提前完成本周期内的工作,则在这个周期内剩余的空闲时间里其他任务也不能运行,CPU将处于相对空闲状态;如果一个实时任务超出了自己的执行时间,工作没有结束,则将保持当前的优先级继续执行,这样就会顺延本来已经安排的后续任务,形成多米诺效应,造成多个任务超出截止时间。   EDF算法的改进如下:   (1)当一个实时任务在分配的执行时间之前完成本周期的工作,并且此时有多个任务在等待,剩余的时间片应该分配给优先级最高的任务。   (2)当一个实时任务超出了自己的执行时间,工作没有结束,这时采用向下一个周期借入的策略,以当前的优先级运行完成余下工作,保证到来的下一个任务的有效执行,解除了连续多个任务超出截止时间的多米诺效应。   2 多处理器系统的实时任务调度策略   多处理器调度就是将[n]个任务分配到[m]个处理器上(需要满足前后约束关系),确保每个任务能准确迅速地完成。任务调度概念图如图1所示。   因此,在多处理器任务实时调度中涉及以下2个相关的问题:   (1)如何把任务分配到各处理器。在这里使用全局调度策略,任务到来时首先将任务放入公共就绪队列中,使用RMS算法确定任务的优先级,完成任务到处理器的分派,周期越短优先级越高越优先被分配。接下来的工作就可被看做是单处理器上任务的调度。   (2)在单个处理器中如何调度就绪任务。当就绪任务被放入到各处理器就绪队列时,我们使用改进后的EDF算法进行调度,保证任务的执行。   2.1 调度算法相关参数   任务集定义为[T={t1,t2,t3,…,tn}。]   任务使用4元祖定义[ti(Ai,Ci,Ti,Di)。]   其中,[Ai]:任务[i]的到达时间;[Ci]:任务[i]的执行时间;其中,[Ti]为任务[i]的周期;[Di]为任务[i]的最后截止期限。   定义:每一个处理器的利用

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档