欢迎来到天天文库
浏览记录
ID:65418405
大小:610.50 KB
页数:15页
时间:2022-01-08
《OS12(实时调度)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、5、实时调度1)实时系统(real-timesystem)P11实时:表示“及时”,实时系统是系统能及时响应外部事件请求,在规定时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。用于工业过程、军事、金融等实时控制、实时信息处理领域按任务执行时是否呈现周期性来划分:周期性实时任务:每隔一段固定的时间发生非周期性实时任务:在不可预测的时间发生。截止时间(deadline):开始截止时间(最晚开始时间)和完成截止时间(最晚完成时间)根据对截止时间的要求来划分:硬实时任务:存在必须满足的时间限制。软实时任务:可以容忍偶尔超过时间限制。实时任务的类型:2)实现实时调度的基本条
2、件提供必要的信息(就绪时间、截止时间、处理时间、资源要求、资源优先级)系统处理能力要足够强:单处理机情况下:设有m个周期性事件,事件i的周期为Pi,其中每个事件需要Ci秒的CPU时间来处理,可调度的的实时系统必须满足:C1/P1+C2/P2+…+Cm/Pm≤1采用抢占式调度机制具有快速切换机制练习:一个实时系统中有4个周期性事件,周期分别为50、100、300和250ms。若假设其处理分别需要35、20、10和x毫秒,则该系统可调度允许的x值最大为多少?实时任务可调度应满足如下条件:35/50+20/100+10/300+x/250<1x<250(1-28/30)=16.67
3、3)实时调度算法的分类1)非抢占式调度算法:非抢占式轮转调度算法(实时要求不太严格,s)非抢占式优先调度算法(要求比较严格,数百ms)2)抢占式调度算法:基于时钟中断的抢占优先调度算法(要求比较严格,数10ms)立即抢占优先权调度算法(紧迫任务,几ms甚至百微秒)图3-8实时进程调度4)常用的几种实时调度算法I.最早截止时间优先即EDF(EarliestDeadlineFirst)算法P100图3-9EDF算法用于非抢占调度方式1)非抢占式调度用于非周期实时任务:最早开始截止时间优先Fig.3-102)抢占式调度用于周期实时任务:最早完成截止时间优先II.最低松弛度优先即LL
4、F(LeastLaxityFirst)算法P101该算法是根据任务紧急(或松弛)的程度,来确定任务的优先级,即选择松弛度最少的进程执行该算法。主要用于可抢占调度方式中。松弛度:即各个进程的富裕时间(裕度)松弛度=必须完成时间-其本身的运行时间-当前时间图3-12利用LLF算法进行调度的情况图3-11A和B任务每次必须完成的时间假如在一个实时系统中,有两个周期性实时任务A和B,任务A要求每20ms执行一次,执行时间为10ms;任务B只要求每50ms执行一次,执行时间为25ms。实时调度问题-习题1对下面的5个非周期性实时任务,按最早开始截止时间优先调度算法如何进行CPU调度?(
5、非抢占式/抢占式)进程到达时间执行时间开始截止时间A1020110B202020C402050D502090E6020700102030405060708090100110ABCDEBCEDA到达时间开始截止时间实时调度问题-习题1对下面的5个非周期性实时任务,按最早开始截止时间优先调度算法如何进行CPU调度?(非抢占式/抢占式)进程到达时间执行时间开始截止时间A1020110B202020C402050D502090E6020700102030405060708090100110ABBCCEEDDAABCDEBCEDA到达时间开始截止时间实时调度问题-习题2若有3个周期性任
6、务,各任务的周期和执行时间如下表所示,考虑应如何按最低松弛度优先算法对它们进行CPU调度?进程周期执行时间A2010B5010C50150102030405060708090100110A1B1C1A2A3B2C2A4A5A6B3C3A1A2A3A4A5时间各进程到达时间必须完成时间B1C1B2C2
此文档下载收益归作者所有