《操作系统10--实时调度.ppt》由会员分享,可在线阅读,更多相关《操作系统10--实时调度.ppt(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、10.1/13十二月 225、实时调度、实时调度1 1)实时系统实时系统(real-time system)real-time system)P11P11实时:表示实时:表示“及时及时”,实时系统是系统能及时响应外部事件请求,在规定时间内完实时系统是系统能及时响应外部事件请求,在规定时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。成对该事件的处理,并控制所有实时任务协调一致地运行。用于工业过程、军事、金融等实时控制、实时信息处理领域用于工业过程、军事、金融等实时控制、实时信息处理领域操作系统10.2/13十二月 22按任务执行时是否呈现周期性来划分:按任务执行时是否呈现周期性来划分
2、:周期性实时任务:周期性实时任务:每隔一段固定的时间发生每隔一段固定的时间发生非周期性实时任务:非周期性实时任务:在不可预测的时间发生。在不可预测的时间发生。截止时间截止时间(deadline)deadline):开始截止时间(最晚开始时间)和完成截止时间(最晚完成时间)开始截止时间(最晚开始时间)和完成截止时间(最晚完成时间)根据对截止时间的要求来划分:根据对截止时间的要求来划分:硬实时任务:存在必须满足的时间限制。硬实时任务:存在必须满足的时间限制。软实时任务软实时任务:可以容忍偶尔超过时间限制。可以容忍偶尔超过时间限制。实时任务的类型:实时任务的类型:操作系统10.3/13十二月 22
3、2 2)实现实时调度的基本条件)实现实时调度的基本条件 提供必要的信息提供必要的信息(就绪时间、截止时间、处就绪时间、截止时间、处理时间、资源要求、资源优先级理时间、资源要求、资源优先级)系统处理能力要足够强系统处理能力要足够强:单处理机情况下:设有单处理机情况下:设有m个周期性事件,事件个周期性事件,事件i的的周期为周期为Pi,其中每个事件需要其中每个事件需要Ci秒的秒的CPU时间来时间来处理,可调度的的实时系统必须满足:处理,可调度的的实时系统必须满足:C1/P1+C2/P2+Cm/Pm 1采用抢占式调度机制采用抢占式调度机制具有快速切换机制具有快速切换机制操作系统10.4/13十二月 2
4、23 3)实时调度算法的分类)实时调度算法的分类 1)1)非抢占式调度算法非抢占式调度算法 :非抢占式轮转调度算法非抢占式轮转调度算法(实时要求不太严格,实时要求不太严格,s)s)非抢占式优先调度算法非抢占式优先调度算法(要求比较严格要求比较严格,数百数百ms)ms)2)2)抢占式调度算法抢占式调度算法:基于时钟中断的抢占优先调度算法基于时钟中断的抢占优先调度算法(要求比较严格要求比较严格,数数10ms)10ms)立即抢占优先权调度算法立即抢占优先权调度算法(紧迫任务紧迫任务,几几msms甚至百微秒甚至百微秒)操作系统10.5/13十二月 22图图 3-8 3-8 实时进程调度实时进程调度 操
5、作系统10.6/13十二月 224 4)常用的几种实时调度算法)常用的几种实时调度算法 I.最早截止时间优先即最早截止时间优先即EDF(Earliest Deadline First)算法算法 P100图图 3-9 EDF3-9 EDF算法用于非抢占调度方式算法用于非抢占调度方式 1 1)非抢占式调度用于非周期实时任务:最早开始截止时间优先)非抢占式调度用于非周期实时任务:最早开始截止时间优先操作系统10.7/13十二月 22Fig.3-10 Fig.3-10 2 2)抢占式调度用于周期实时任务:最早完成截止时间优先)抢占式调度用于周期实时任务:最早完成截止时间优先操作系统10.8/13十二月
6、 22II.最低松弛度优先即最低松弛度优先即LLF(Least Laxity First)算法算法 P101 该该算算法法是是根根据据任任务务紧紧急急(或或松松弛弛)的的程程度度,来来确确定定任任务务的优先级,即的优先级,即选择松弛度最少的进程执行选择松弛度最少的进程执行该算法。该算法。主要用于可抢占调度方式中。主要用于可抢占调度方式中。松弛度:即各个进程的富裕时间(裕度松弛度:即各个进程的富裕时间(裕度)松弛度松弛度=必须完成时间必须完成时间-其本身的运行时间其本身的运行时间-当前时间当前时间操作系统10.9/13十二月 22图图 3-12 3-12 利用利用LLFLLF算法进行调度的情况算
7、法进行调度的情况图图 3-11 A3-11 A和和B B任务每次必须完成的时间任务每次必须完成的时间假如在一个实时系统中,有两个周期性实时任务假如在一个实时系统中,有两个周期性实时任务A和和B,任务,任务A要求每要求每 20 ms执行一次,执行时间为执行一次,执行时间为 10 ms;任务;任务B只要求每只要求每50 ms执行一次,执行时间为执行一次,执行时间为 25 ms。操作系统10.10/13十二月 22实时调度问题-习题1对下面的对下面的对下面的对下面的5 5个非周期性实时任务,按最早开始截止时间优个非周期性实时任务,按最早开始截止时间优个非周期性实时任务,按最早开始截止时间优个非周期性
8、实时任务,按最早开始截止时间优先调度算法如何进行先调度算法如何进行先调度算法如何进行先调度算法如何进行CPUCPU调度?调度?调度?调度?(非抢占式非抢占式非抢占式非抢占式/抢占式抢占式抢占式抢占式)进程进程进程进程到达时间到达时间到达时间到达时间执行时间执行时间执行时间执行时间开始截止时间开始截止时间开始截止时间开始截止时间A A10102020110110B B202020202020C C404020 20 5050D D505020209090E E6060202070700 0101020203030404050506060707080809090100100110110A AB B
9、C CD DE EB BC CE ED DA A到达时间到达时间到达时间到达时间开始截止开始截止开始截止开始截止时间时间时间时间操作系统10.11/13十二月 22实时调度问题-习题1对下面的对下面的对下面的对下面的5 5个非周期性实时任务,按最早开始截止时间优个非周期性实时任务,按最早开始截止时间优个非周期性实时任务,按最早开始截止时间优个非周期性实时任务,按最早开始截止时间优先调度算法如何进行先调度算法如何进行先调度算法如何进行先调度算法如何进行CPUCPU调度?调度?调度?调度?(非抢占式非抢占式非抢占式非抢占式/抢占式抢占式抢占式抢占式)进程进程进程进程到达时间到达时间到达时间到达时间
10、执行时间执行时间执行时间执行时间开始截止时间开始截止时间开始截止时间开始截止时间A A10102020110110B B202020202020C C404020 20 5050D D505020209090E E6060202070700 0101020203030404050506060707080809090100100110110A AB BB BC CC CE EE ED DD DA AA AB BC CD DE EB BC CE ED DA A到达时间到达时间到达时间到达时间开始截止开始截止开始截止开始截止时间时间时间时间操作系统10.12/13十二月 22实时调度问题-习题2若有
11、若有若有若有3 3个周期性任务,各任务的周期和执行时间如下表所示,个周期性任务,各任务的周期和执行时间如下表所示,个周期性任务,各任务的周期和执行时间如下表所示,个周期性任务,各任务的周期和执行时间如下表所示,考虑应如何按最低松弛度优先算法对它们进行考虑应如何按最低松弛度优先算法对它们进行考虑应如何按最低松弛度优先算法对它们进行考虑应如何按最低松弛度优先算法对它们进行CPUCPU调度?调度?调度?调度?进程进程进程进程周期周期周期周期执行时间执行时间执行时间执行时间A A20201010B B50501010C C505015 15 0 0101020203030404050506060707
12、080809090100100110110A1A1B1B1C1C1A2A2A3A3B2B2C2C2A4A4A5A5A6A6B3B3C3C3A1A1A2A2A3A3A4A4A5A5时间时间时间时间各进程到各进程到各进程到各进程到达时间达时间达时间达时间必须完成必须完成必须完成必须完成时间时间时间时间B1B1C1C1B2B2C2C2操作系统10.13/13十二月 22(第三章(第三章 进程管理)小结进程管理)小结顺序执行和并发执行顺序执行和并发执行进程:进程:相关概念相关概念;(;(与程序比较与程序比较);静态表示(上下文,包括;静态表示(上下文,包括PCBPCB),),动态表示(状态)动态表示(
13、状态)进程控制进程控制:状态转换(注意:挂起和激活)状态转换(注意:挂起和激活)互斥和同步:互斥和同步:临界资源、临界区;信号量、临界资源、临界区;信号量、PV操作;经典同步操作;经典同步问题、同步问题问题、同步问题;管程管程进程间通信进程间通信IPCIPC:基本概念;三种通信方式;直接、间接方式基本概念;三种通信方式;直接、间接方式线程:线程:引入原因,与进程比较引入原因,与进程比较管程:管程:概念,特点概念,特点死锁问题:死锁问题:原因,条件,解决方法;原因,条件,解决方法;银行家算法银行家算法处理机调度:处理机调度:分为几个层次分为几个层次(作业调度、中级调度、进程调度作业调度、中级调度、进程调度);评价调度算法的指标;调度算法各自的特点;采用不同的算法计评价调度算法的指标;调度算法各自的特点;采用不同的算法计算进城的周转时间、调度顺序等;实时调度概念、常见算法算进城的周转时间、调度顺序等;实时调度概念、常见算法操作系统
限制150内