- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九讲 处理机调度与死锁之实时调度和多处理机系统调度
引入
在一个实时系统中,时间起着重要的作用,即每一个实时进程或任务都有一个时间约束要求,如:在何时之前必须开始做,在何时之前必须完成等等。在一个实时应用系统,可能有多个实时进程或任务,每个实时任务都有其时间约束,所以需一种新的调度算法来合理地安排这些实时任务的执行次序,使它们能满足各个实时任务的的时间约束条件-,这样就引入了实时调度
1 概念
1.1 实时调度
满足实时任务各自时间约束条件的调度称为实时调度。
1.2 实现实时调度的基本条件
1.提供必要的调度信息(就绪时间、开始截止时间和完成截止时间、处理时间、资源要求、优先级)
2.系统处理能力强(限制条件:决定系统是否可调度,否则减少C
单机:
(m-实时任务数目,ci—每次处理时间,pi—周期时间) 例子见p81
多机:
(N—处理机数目,ci—每次处理时间,pi—周期时间)
3.采用抢占式的调度机制。当一个优先权更高的进程到达,则当前进程被挂起。让优先权高的任务执行。这样来满足硬实时任务对截止时间的要求。
4.具有快速切换机制。快速响应中断和快速的任务切换。
1.3 一些概念
就绪时间:实时任务产生并可以开始处理的时间。
开始截止时间:实时任务最迟开始处理的时间。
处理时间:实时任务处理所需要的处理机的时间。
完成截止时间:实时任务最迟完成时间。
发生周期:周期性实时任务的发生间隔时间。
优先级:实时任务相对紧廹程序。
2 实时调度算法的分类
2.1 按实时任务性质(即对时间约束强强弱程度)
1. 硬实时调度:必须满足任务截止期要求,错过可能导致严重后果。
2. 软实时调度算法:期望满足任务截止期要求,错过一般可容忍。
按调度方式
1. 非抢占式调度算法(如下图所示)实时系统要求不严格系统。
非抢占式轮转调度算法: 用于工业生产的群控系统中。实时系统要求不严格系统。
非抢占式优先调度算法:用于有一定时间要求的实时控制系统之中。
2. 抢占式调度算法 (如下图所示)
按抢占发生的时间
基于时钟中断抢占的优先权调度算法
立即抢占的优先权调度算法
常用的几种实时调度算法
3.1最早截止时间优先算法(EDF算法)
基本思想:该算法是根据任务的开始截止时间来确定任务的优先级。开始截止时间越早,其优先级越高。就绪队列中任务按其截止时间排列,队首任务先分配处理机。
如:见课本p83
3.2 最低松弛度优先算法(LLF算法)
基本思想:该算法是根据任务紧急(或松弛)的程序,来确定任务的优先级。任务的紧急度越高,其优先级越高,并使之优先执行。该算法主要采用抢占调度方式,其调度也即具有完成截止时间的周期性实时任务的调度
例:在一个实时系统中,有两个周期性实时任务A和B,任务A要求每20ms执行一次,执行时间为10ms;任务B只要求每50ms执行,执行时间为25ms。其最低松弛度优先算法调度如下:如下图。
多处理机系统中的调度
多处理机系统(MPS MultiProcessor System)实现对信息的高度并行处理,达到提高系统吞吐量和可靠性的目的。
4.1 多处理机系统的类型 了解
1.从耦合的紧密程度来分类:
紧密耦合MPS
松弛耦合MPS
2.由系统中所用的处理器分类。
对称多处理机系统
非对称多处理机系统。一般为主/从式,也就是一个主处理机多个从处理机。
进程分配方式
在多处理机系统中,进程的调度和系统结构有关。若同构型系统中,由于所有处理机都相同,则可将进程分配到任何一个处理机上执行;若非对称多处理机系统,则对每一个进程必须分配其到某一适合其运行的处理机上去执行。
4.1.1 对称多处理机系统中的进程分配方式
在SMP系统中,所有处理机都是相同的,因此可以看作为一个处理机池。由调度程序,将任一进程分配给池中的任意处理机去处理。采用两种方式:
静态分配(Satic Assigenment)
基本思想:指一个进程从开始执行到其完成,都被固定地分配给一个处理机去执行。
注意:应对该处理机单独设立专用的就绪队列,该队列中的进程都是先后被分配给这个处理机执行的进程。当进程阻塞时,也挂在该就绪队列,唤醒后仍在该处理机上执行。
缺点:使各处理机忙闲不均。
动态分配(Dynamic Assgement)
基本思想:在系统中,就设置一个公共的就绪队列,这样,所有的就绪进程进入该队列中。分配进程时,可将进程分配到任何一个处理机上。这样,对每个进程来说,每次调度时,都被随机的分配到当前空闲的某个处理机上执行。
优点:消除各处理机忙闲不均情况。
4.1.2 非对称多处理机系统中的进程分配方式
基本思想:对于非对称MPS,
文档评论(0)