计算机操作系统(第四章)_第1页
计算机操作系统(第四章)_第2页
计算机操作系统(第四章)_第3页
计算机操作系统(第四章)_第4页
计算机操作系统(第四章)_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机操作系统

第四章处理机调度第1页第四章处理机调度第4章处理机调度4.1分级调度4.2作业调度4.3进程调度4.4调度算法4.5算法评价4.6实时系统调度方法本章小结第2页第四章处理机调度处理机调度要解决的问题WHAT:按什么原则分配CPU—进程调度算法WHEN:何时分配CPU—进程调度的时机HOW:如何分配CPU—CPU调度过程(进程的上下文切换)几个常用的指标衡量调度策略的最常用的几个指标是:周转时间、吞吐率、响应时间以及设备利用率等。周转时间:指将一个作业提交给计算机系统后到该作业的结果返回给用户所需要的时间。吞吐量:指在给定的时间内,一个计算机系统所完成的总工作量。吞吐率:单位时间内所完成的作业数,响应时间:指从用户向计算机发出一个命令到计算机把相应的执行结果返回给用户所需要的时间。设备利用率:主要指输入输出设备的使用情况。第4页第四章处理机调度主要内容:

本章将以CPU管理为核心,讨论管理、控制用户进程执行的方法。作业与进程的关系;作业调度策略与算法;进程调度策略与算法;几种调度策略的评价;实时调度系统。第5页第四章处理机调度4.1分级调度

4.1.1作业的状态及其转换一个作业从提交给计算机系统到执行结束退出系统,一般都要经历提交、收容、执行和完成等4个状态第6页第四章处理机调度4.1.2调度的层次处理机调度问题实际上也是处理机的分配问题(1)作业调度:即高级调度(宏观调度),又称为"宏观调度"、"高级调度"。从用户工作流程的角度,一次提交的若干个流程,其中每个程序按照进程调度。时间上通常是分钟、小时或天(2)交换调度:中级调度,从存储器资源的角度。将进程的部分或全部换出到外存上,将当前所需部分换入到内存。指令和数据必须在内存里才能被CPU直接访问。(3)进程或线程调度:低级调度(微观调度),又称为"微观调度"、"低级调度"。从CPU资源的角度,执行的单位。时间上通常是毫秒。因为执行频繁,要求在实现时达到高效率

注:在多道批处理系统中,存在着作业调度和进程调度。但是,在分时系统和实时系统中,一般不存在作业调度,而只有进程调度、交换调度和线程调度第7页第四章处理机调度处理机调度的层次处理器调度的层次

中级调度新建态挂起就绪态挂起等待态高级调度低级调度运行态就绪态等待态终止态第9页第四章处理机调度处理器的调度模型

中级调度处理器低级调度高级调度完成超时

挂起就绪队列挂起等待队列等待队列就绪队列等待事件交互式用户事件出现后备作业队列中级调度第10页第四章处理机调度4.1.2作业与进程作业是用户向计算机提交任务的任务实体进程是计算机为了完成用户任务实体而设置的执行实体,是系统分配资源的基本单位第11页第四章处理机调度4.2作业调度作业调度主要是完成作业从后备状态到执行状态的转变,以及从执行状态到完成状态的转变第12页第四章处理机调度作业调度与进程调度的关系

执行状态运行就绪等待输入状态后备状态完成状态进程调度中级调度缓输出作业调度预输入完成第13页第四章处理机调度4.2.1作业调度的具体功能(1)记录系统中各作业的状况(JCB)(2)从后备队列中挑选出一部分作业投入执行(3)为被选中作业做好执行前的准备工作(4)在作业执行结束时做善后处理工作第14页第四章处理机调度图4.3作业调度中状态的转换过程第15页第四章处理机调度4.2.2作业调度目标与性能衡量作业调度的功能最主要的是从后备作业队列中选取一批作业进入执行状态。调度目标主要是以下4点:(1)对所有作业应该是公平合理的;(2)应使设备有高的利用率;(3)每天执行尽可能多的作业;(4)有较快的响应时间。第16页第四章处理机调度怎样来衡量一个作业调度算法是否满足系统设计的要求呢?批处理系统:由于主要用于计算,对于作业的周转时间要求较高。因此,作业的平均周转时间或平均带权周转时间,被作为衡量调度算法优劣的标准。主要考察系统的周转时间。分时系统:主要考察系统的平均响应时间。实时系统:主要考察系统对特定事件的响应时间。因此,分时系统和实时系统来说,外加平均响应时间被作为衡量调度策略优劣的标准第17页第四章处理机调度1.周转时间:作业i的周转时间Ti为

Ti=Tei-Tsi其中Tei为作业i的完成时间,Tsi为作业的提交时间。对于被测定作业流所含有的n(n>=1)个作业来说,其平均周转时间为:一个作业的周转时间说明了该作业在系统内停留的时间,包含两部分:等待时间;执行时间,即:

Ti=Twi+Tri这里,Twi主要指作业i由后备状态到执行状态的等待时间,它不包括作业进入执行状态后的等待时间。第四章处理机调度第18页2.带权周转时间作业的周转时间包含了两个部分,即等待时间和执行时间。为了更进一步反映调度性能,使用带权周转时间的概念。带权周转时间是作业周转时间与作业执行时间的比:

Wi=Ti/Tri对于被测定作业流所含有的几个作业来说,其平均带权周转时间为:对于分时系统,除了要保证系统吞吐量大、资源利用率高之外,还应保证有用户能够容忍的响应时间。因此,在分时系统中,仅仅用周转时间或带权周转时间来衡量调度性能是不够的。第四章处理机调度第19页进程调度的功能:调度程序(dispatcher)记录所有进程的运行状况(静态和动态)当进程出让CPU或调度程序剥夺执行状态进程占用的CPU时,选择适当的进程分派CPU完成上下文切换4.3进程调度4.3.1进程调度的功能(1)记录系统中所有进程的执行情况.(PCB)(2)选择占有处理机的进程调度的主要功能是按照一定的策略选择一个处于就绪状态的进程,使其获得处理机执行。根据不同的系统设计目的,有各种各样的选择策略,例如系统开销较少的静态优先数调度法,适合于分时系统的轮转法和多级反馈轮转法等。这些选择策略决定了调度算法的性能(3)进行进程上下文切换一个进程的上下文(context)包括进程的状态、有关变量和数据结构的值、硬件寄存器的值和PCB以及有关程序等第21页第四章处理机调度4.3.2进程调度的时机(1)正在执行的进程执行完毕。(2)执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态。(3)执行中进程调用了P原语操作,从而因资源不足而被阻塞;或调用了V原语操作激活了等待资源的进程队列。(4)执行中进程提出I/O请求后被阻塞。(5)在分时系统中时间片已经用完。(6)在执行完系统调用

以上都是在CPU执行不可剥夺方式下所引起进程调度的原因。在CPU执行方式是可剥夺时。(7)就绪队列中的某进程的优先级变得高于当前执行进程的优先级,从而也将引发进程调度。第22页第四章处理机调度4.3.3进程的上下文切换过程:步骤:(1)决定是否做上下文切换(2)保存当前进程的上下文。(3)选择进程(4)恢复或装配所选进程的上下文,交CPU的控制权。如:用户态执行进程A代码--进入OS核心(通过时钟中断或系统调用)保存进程A的上下文,恢复进程B的上下文(CPU寄存器和一些表格的当前指针)用户态执行进程B代码注:上下文切换之后,指令和数据快速缓存cache通常需要更新,执行速度降低第四章处理机调度第23页4.3.3进程调度性能评价进程调度是系统内部的低级调度,进程调度的优劣直接影响作业调度的性能。反映作业调度优劣的周转时间和平均周转时间只在某种程度上反映了进程调度的性能。进程调度性能的衡量方法可分为定性和定量两种。定性:可靠性(保证调度的顺利进行)和简洁性(切换时间尽可能的短)定量:CPU的利用率评价、进程在就绪队列中的等待时间与执行时间之比等。第24页第四章处理机调度我们可从不同的角度来判断处理机调度算法的性能,如用户的角度、处理机的角度和算法实现的角度。实际的处理机调度算法选择是一个综合的判断结果。周转时间:作业从提交到完成(得到结果)所经历的时间。包括:在收容队列中等待,CPU上执行,就绪队列和阻塞队列中等待,结果输出等待--批处理系统平均周转时间T平均带权周转时间(带权周转时间W是T(周转)/T(CPU执行)〕响应时间:用户输入一个请求(如击键)到系统给出首次响应(如屏幕显示)的时间--分时系统截止时间:开始截止时间和完成截止时间--实时系统,与周转时间有些相似。公平性:不因作业或进程本身的特性而使上述指标过分恶化。如长作业等待很长时间。优先级:可以使关键任务达到更好的指标。1.面向用户的调度性能准则第25页第四章处理机调度2.面向系统的调度性能准则吞吐率:单位时间内所完成的作业数,跟作业本身特性和调度算法都有关系--批处理系统平均周转时间不是吞吐量的倒数,因为并发执行的作业在时间上可以重叠。如:在2小时内完成4个作业,而每个周转时间是1小时,则吞吐量是2个作业/小时处理机利用率:--大中型主机各种设备的均衡利用:如CPU繁忙的作业和I/O繁忙(指次数多,每次时间短)的作业搭配--大中型主机3.调度算法本身的调度性能准则易于实现执行开销比第26页第四章处理机调度4.4调度算法1.先来先服务(FCFS)调度算法2.轮转法(roundrobin)3.多级反馈轮转法4.优先级法5.最短作业优先法(shortestjobfirst)6.最短剩余时间优先法7.最高响应比优先法(highestresponserationext)第27页第四章处理机调度1.先来先服务(FCFS)调度算法

基本思想:将用户作业和就绪进程按提交顺序或变为就绪状态的先后排成队列,并按照先来先服务的方式进行调度处理…ribpcbipcbjpcbk等待队列头指针可利用资源队列头指针资源分配程序入口地址后先按请求的先后次序第28页第四章处理机调度按照作业提交或进程变为就绪状态的先后次序,分派CPU;当前作业或进程占用CPU,直到执行完或阻塞,才出让CPU(非抢占方式)。在作业或进程唤醒后(如I/O完成),并不立即恢复执行,通常等到当前作业或进程出让CPU。最简单的算法。排序原则:按请求的先后次序排序。优点:算法容易实现,是一种最普通和最简单的方法。存在一定的公平性。缺点:效率不高,只顾及作业和进程等候时间,没考虑作业和进程要求服务时间的长短。算法的特点:有利于长作业,不利于短作业;有利于CPU繁忙的作业,而不利于I/O繁忙的作业。算法适用对象:主要适用于作业和进程的调度所带来的问题:有一个作业长时间占有资源,其它作业没有办法执行第29页第四章处理机调度先来先服务算法举例三个作业同时到达系统并立即进入调度:作业名/所需CPU时间:作业1/28,作业2/9,作业3/3。采用FCFS算法,平均作业周转时间为:

35•若三个作业提交顺序改为作业2、1、3,平均作业周转时间约为:

29若三个作业提交顺序改为作业3、2、1,平均作业周转时间约为:

18FCFS调度算法的平均作业周转时间与作业提交的顺序有关。第30页第四章处理机调度例有5个任务A,B,C,D,E,它们几乎同时到达,预计它们的运行时间为10,6,2,4,8min。对于下列每一种调度算法,计算其平均进程周转时间(进程切换开销可不考虑)。先来先服务(按A,B,C,D,E)算法。采用先来先服务(FCFS)调度算法时,5个任务在系统中的执行顺序、完成时间及周转时间如下表所示:执行次序运行时间等待时间周转时间A10010B61016C21618D41822E82230执行次序运行时间优先数等待时间周转时间根据表中的计算结果,5个进程的平均周转时间T为:T=(10+16+18+22+30)/5=19.2min2.轮转法(roundrobin)基本思想:系统把所有就绪进程按先后次序排队,处理机总是优先分配给就绪队列中的第一个就绪进程,并分配它一个固定的时间片(如100毫秒)。当该运行进程用完规定的时间片时,被迫释放处理机给下一个处于就绪队列中的第一个进程,分给这个进程相同的时间片,每个运行完时间片的进程,当未遇到任何阻塞时,就回到就绪队列的尾部,并等待下次转到它时再投入运行。优点:防止那些很少使用外围设备的进程过长的占用处理器而使得要使用外围设备的那些进程没有机会去启动外围设备。只要是处于就绪队列中的进程,按此种算法迟早总可以分得处理机投入运行缺点:只能用来调度分配那些可以抢占的资源。算法适用对象:适用于进程调度(分时系统),不能作业调度。第32页第四章处理机调度时间片长度的选择会直接影响系统开销和响应时间第33页第四章处理机调度对响应时间的要求:设时间片为t(恒定),进程上下文切换时间为q,当前进程数为n,响应时间为R,则有:R=(n-1)*(q+t)=n*(q+t);系统效率=q/(q+t)(1)如果时间片长度过短,则调度程序剥夺处理机的次数增多。使进程上下文切换次数也大大增加,从而加重系统开销。

(2)如果时间片长度选择过长,比方说一个时间片能保证就绪队列中所需执行时间最长的进程能执行完毕,则轮转法变成了先来先服务法。时间片长度的影响因素:就绪进程的数目:数目越多,时间片越小(当响应时间一定时)系统的处理能力:应当使用户输入通常在一个时间片内能处理完,否则使响应时间,平均周转时间和平均带权周转时间延长。第四章处理机调度第34页如何确定时间片呢?

时间片长度的选择是根据系统对响应时间的要求R和就绪队列中所允许的最大进程数Nmax确定的。它可表示为:

q=R/Nmax例有5个任务A,B,C,D,E,它们几乎同时到达,预计它们的运行时间为10,6,2,4,8min。对于下列每一种调度算法,计算其平均进程周转时间(进程切换开销可不考虑)。时间片轮转算法。如果系统采用时间片轮转(RR)算法,令时间片为2分钟,5个任务轮流执行的情况为:第1轮:(A,B,C,D,E)第2轮:(A,B,D,E)第3轮:(A,B,E)第4轮:(A,E)第5轮:(A)显然,5个进程的周转时间为:T1=30min、T2=22min、T3=6min、T4=16min、T5=28min。它们的平均周转时间T为:T=(30+22+6+16+28)/5=20.4min3.多级反馈轮转法主要思想:

将就绪进程分为两级或多级,系统相应建立两个或多个就绪进程队列,较高优先级的队列一般分配给较短的时间片。分级轮转法:将先前的一个就绪队列,根据进程的优先级不同划分两个或两个以上的就绪队列,并赋给每个队列不同的优先级,在同一队列内优先级相同。当一个进程在执行完它的时间片之后,或从睡眠中被唤醒以及被创建之后,将进入不同的就绪队列。特点:一个进程在执行结束之前需要通过反馈循环执行第37页第四章处理机调度多级反馈队列的例子三个队列:Q0

用RR调度算法,时间片为8毫秒Q1

用RR调度算法,时间片为16毫秒Q2

–FCFS调度方法新创建的进程进入队列Q0,当用轮转法调度到它时,它最多可以执行8milliseconds,如果没有执行完,该进程将被放到队列Q1.在队列Q1

该进程最多可以执行16毫秒,如果还没有执行结束,则它就将进入队列

Q2.MultilevelFeedbackQueues4.优先级

优先级的方法可分为静态法和动态法静态法:根据作业或进程的静态特性,在作业或进程开始执行之前就确定它们的优先级,一旦开始执行之后就不能改变。动态法:把作业或进程的静态特性和动态特性结合起来确定作业或进程的优先级,随着作业或进程的执行过程,其优先级不断变化第40页第四章处理机调度静态优先级的确定原则作业调度:(1)由用户自己根据作业的紧急程度输入一个适当的优先级(2)由系统或操作员根据作业类型指定优先级。(3)系统根据作业要求资源情况确定优先级进程调度:(1)按进程的类型给予不同的优先级(2)将作业的静态优先级作为它所属进程的优先级第41页第四章处理机调度静态优先级使用外围设备频繁者优先数大,这样有利于提高效率;重要算题程序的进程优先数大,这样有利于用户;进入计算机时间长的进程优先数大,这样有利于缩短作业完成的时间;交互式用户的进程优先数大,这样有利于终端用户的响应时间等等优点:调度算法实现简单,系统开销小缺点:系统效率较低,调度性能不高(静态优先级一旦确定之后,直到执行结束为止始终保持不变)第42页第四章处理机调度动态优先级的确定原则根据进程占有CPU时间的长短来决定根据进程占有CPU时间多少来决定,当进程占有CPU时间愈长,那么,在它被阻塞之后再次获得调度的优先级就越低,反之,进程获得调度的可能性越大根据就绪进程等待CPU的时间长短来决定一个就绪进程在就绪队列中等待的时间越长,则它获得调度选中的优先级就越高

第43页第四章处理机调度线性优先级调度算法

(SRR,SelfishRoundRobin)就绪进程队列分成两个:新创建进程队列:按FCFS方式排成;进程优先级按速率a增加;享受服务队列:已得到过时间片服务的进程按FCFS方式排成;进程优先级按速率b增加;新创建进程等待时间的确定:当新创建进程优先级与享受服务队列中最后一个进程优先级相同时,转入享受服务队列;本算法是优先级算法的一个实例,它通过进程优先级的递增来改进长执行时间进程的周转时间特征。1.SRR算法第44页第四章处理机调度SRR算法的优先级变化第45页第四章处理机调度SRR算法与FCFS算法和时间片轮转算法的关系当b>a>0时,享受服务队列中永远只有一个进程;SRR算法退化成FCFS算法;当a>b=0时,SRR算法就是时间片轮转算法;第46页第四章处理机调度例有5个任务A,B,C,D,E,它们几乎同时到达,预计它们的运行时间为10,6,2,4,8min。其优先级分别为3,5,2,1和4,这里5为最高优先级。对于下列每一种调度算法,计算其平均进程周转时间(进程切换开销可不考虑)。--优先级调度算法。执行次序运行时间优先数等待时间周转时间A103010B651016C221618D411822E842230采用最高优先级调度(HPF)算法时,5个任务在系统中的执行顺序、完成时间及周转时间如下表所示:执行次序运行时间优先数等待时间周转时间B6506E84614A1031424C222426D112627它们的平均周转时间为:T=(6+14+24+26+27)/5=19.4min两种算法综合举例:例:设有四个进程P1,P2,P3,P4,它们达到就绪队列的时刻、运行时间及优先级如下表所示:进程到达就绪队列时刻(基本时间单位)运行时间(基本时间单位)优先级P1091P2143P3282P43104

问:(1)若采用可剥夺的优先级调度算法,给出各进程的调度次序以及每个进程的等待时间。(1)若采用可剥夺的优先级调度算法,则进程执行模型为:调度次序:P1、P2、P4、P2、P3、P1;其中P1等待时间为:22,P2等待时间为:10,P3等待时间为:13,P4等待时间为:0。P4P3P2P101234567890123456789012345678905.最短作业优先法(shortestjobfirst)主要思想:选择那些估计需要执行时间最短的作业投入执行,为它们创建进程和分配资源。优点:同一时间内处理的作业个数最多,吞吐量大于其他调度方式缺点:对长作业非常不利,可能长时间得不到执行;未能依据作业的紧迫程度来划分执行的优先级;难以准确估计作业(进程)的执行时间,从而影响调度性能。第51页第四章处理机调度最短作业优先算法举例四个作业同时到达系统并进入调度:作业名/所需CPU时间:作业1/9,作业2,作业3/10,作业4/8。SJF作业调度顺序为作业2、4、1、3,平均作业周转时间T=17,平均带权作业周转时间W=1.98。如果实行FCFS调度算法,平均作业周转时间T=19,平均带权作业周转时间

W=2.51。第52页第四章处理机调度6.最短剩余时间优先算法SRTF把SJF算法改为抢占式的。一个新作业进入就绪状态,如果新作业需要的CPU时间比当前正在执行的作业剩余下来还需的CPU时间短,SRTF强行赶走当前正在执行作业。称最短剩余时间优先算法此算法不但适用于JOB调度,同样也适用于进程调度。第53页第四章处理机调度最短剩余时间优先算法举例四个作业其到达系统/所需CPU时间如下:Job1-0/8,Job2-1/4,Job3-2/9,Job4-3/5。SRTF调度平均等待时间=6.5毫秒。SJF调度平均等待时间=7.75毫秒。

J1J2J4J1J3015101726第54页第四章处理机调度7.最高响应比优先法(highestresponseratiofirst)(HRRF)主要思想:同时考虑每个作业的等待时间长短和估计需要的执行时间长短,从中选出响应比最高的作业投入执行,是对FCFS方式和SJF方式的一种综合平衡。优点:同时考虑每个作业的等待时间长短和估计需要的执行时间长短缺点:1、吞吐量小于最短作业优先,

2、每次调度要计算响应比,增加了系统的开销响应比的计算:响应比R: R=(W+T)/T=1+W/T

其中T为该作业估计需要的执行时间,W为作业在后备状态队列中的等待时间。第55页第四章处理机调度例有三个作业A(到达时间8:50,执行时间1.5小时)、B(到达时间9:00,执行时间0.4小时)、C(到达时间9:30,执行时间1小时)。当作业全部到达后,单道批处理系统按照响应比高者优先算法进行调度,则作业被选中的次序是()。

A.(ABC) B.(BAC)

C.(BCA) D.(CBA)

E.(CAB) F.(ACB)进程到达时间运行长度开始时间结束时间A8:501.59:3011:00B9:000.411:0011:24C9:30111:2412:24当作业全部到达后,也就是9:30,系统开始调度。此刻各作业的等待时间是,A为40分钟(0.67小时)、B为0.5小时、C为0小时。其响应比分别为:A=1+0.67/1.5=1.4B=1+0.5/0.4=1.25C=1+0/1=1系统首先选A运行,至11:00运行结束。各作业的等待时间是,B为2小时,C为1.5小时。其响应比分别修改为:B=1+2/0.4=6C=1+1.5/1=2.5系统再选B运行,至11:24运行结束。最后选择C运行至12:24结束。因此,本题的正确答案应当是AHRRF算法举例

四个作业到达系统时间/所需CPU时间:作业1-0/20,作业2-5/15,作业3-10/5,作业4-15/10。SJF调度顺序为作业1、3、4、2,平均作业周转时间T=25,平均带权作业周转时间W=2.25

。FCFS调度顺序为作业1、3、4、2,平均作业周转时间T=28.75,平均带权作业周转时间W=3.125

。HRRF调度顺序为作业1、3、4、2,平均作业周转时间T=26.25,平均带权作业周转时间W=2.46

。第58页第四章处理机调度几点说明I/O型进程:让其进入最高优先级队列,以及时响应I/O交互。通常执行一个小时间片,要求可处理完一次I/O请求的数据,然后转入到阻塞队列。计算型进程:每次都执行完时间片,进入更低级队列。最终采用最大时间片来执行,减少调度次数。I/O次数不多,而主要是CPU处理的进程:在I/O完成后,放回优先I/O请求时离开的队列,以免每次都回到最高优先级队列后再逐次下降。为适应一个进程在不同时间段的运行特点,I/O完成时,提高优先级;时间片用完时,降低优先级;第59页第四章处理机调度调度算法性能分析FCFS,RoundRobin,线性优先级算法SRR(SelfishRoundRobin)周转时间长作业时:T(FCFS)<T(SRR)<T(RR)(运行时间是主要因素)短作业时:T(RR)<T(SRR)<T(FCFS)(等待时间是主要因素)调度算法的性能通常是通过实验或计算得到的。第60页第四章处理机调度4.6实时调度第61页第四章处理机调度4.6.1实时调度的特点4.6.2实时调度算法

实时操作系统的特性实时系统是那些时间因素非常关键的系统。实时系统包括监控系统、自动驾驶系统、安全控制系统等,这些系统中,迟到的响应即使正确,也和没有响应一样糟糕。4.6.1实时调度的特点要求更详细的调度信息:如,就绪时间、开始或完成截止时间、处理时间、资源要求、绝对或相对优先级(硬实时或软实时)。采用抢先式调度。快速中断响应,在中断处理时(硬件)关中断的时间尽量短。快速上下文切换:相应地采用较小的调度单位(如线程)。第四章处理机调度第63页

硬实时系统和软实时系统实时系统通常分为硬实时(hardrealtime)系统和软实时(softrealtime)系统。硬实时系统意味着存在必须满足的时间限制;软实时系统允许系统对任务的时限要求有一定的延迟。意味着偶尔超过时间限制时可以容忍的。第64页第四章处理机调度实时操作系统具有以下特点(1)有限等待时间(决定性)(2)有限响应时间(3)用户控制(4)可靠性高(5)系统出错处理能力强第65页第四章处理机调度实时操作系统应具有以下能力(1)很快的进程或线程切换速度进程或线程切换速度是实时系统设计的核心。调度算法的设计原则是满足所有硬实时任务的处理时限和尽可能多地满足软实时任务的处理时限。(2)快速的外部中断响应能力(3)基于优先级的随时抢先式调度策略第66页第四章处理机调度基于优先级的调度策略①优先级+时间片轮转调度策略;②基于优先级的非抢先式调度策略;③基于优先级的固定点抢先式调度策略;④基于优先级的随时抢先式调度策略。第67页第四章处理机调度实时与分时的比较(1)分时系统中并发执行的进程具有不确定性,其执行顺序与执行环境有关;实时系统要求所有的进程在处理事件时,都必须在有限时间内开始处理。(实时系统的有限响应时间特性是指从系统响应外部事件开始,必须在有限时间内处理完毕)(实时系统决定性特性)(2)在分时系统的非实时系统中,用户不能参与对进程调度的控制。在实时系统中,用户可以控制进程的优先级并选择相应的调度算法,从而达到对进程执行先后顺序的控制。(3)实时系统要求很高的可靠性。分时系统的非实时系统中,用户可以用重新启动计算机等来处理系统的差错;实时系统主要是对外部事件进行处理和控制。(4)实时系统要求系统在出错时,既能够处理所发生的错误,又不影响当前正在执行的用户应用第68页第四章处理机调度实时调度算法的分类(1)静态表格驱动类

调度方法多用于调度处理周期性任务,其主要分析参数为周期,执行时间、周期行结束时限和任务优先级等。适用于周期性的实时应用,事先确定一个固定的调度方案。这种方法的特点是有效但不灵活。(2)静态优先级驱动抢先式调度算法类把通用的优先级调度算法用于实时系统,但优先级的确定是通过静态分析(运行时间、到达频率)完成的。(3)动态计划调度算法类(4)尽力而为调度算法类第69页第四章处理机调度实时调度负责

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论