操作系统 低中高级调度
计算机操作系统慕课版第三章课后答案

计算机操作系统慕课版第三章课后答案
1、高级调度与低级调度的主要任务是什么?为什么引入中级调度?
(1)、高级调度的主要任务是将外存的作业调入内存,又称作业调度。
低级调度的主要任务数为内存中处于就绪态的作业分配处理机。
(2)、为了提高内存的利用率与系统吞吐量。
ps:(中级调度是将作业调出掉回,高级调度是掉入,作业一次掉入,多次掉回,所以中级调度频次更高)
2、何谓作业和JCB?
作业是一组程序与数据和作业说明书,是高级调度的基本单位。
JCB是作业控制块,是作业存在的表示,包含管理,调度所需的全部信息。
ps:(对作业的控制是JCB和作业说明书一起的)
3、在什么情况下需要使用JCB?JCB通常包含了哪些内容?(1)作业进入系统。
(2)包含系统对作业调度,管理的全部信息。
4、在作业调度中应如何确定接纳多少作业和接纳哪些作业?
取决于多道程序度和调度算法。
5、试说明低级调度的主要功能?
从就绪队列中根据调度算法选择一个进程分配处理机。
6、简述引起进程调度的原因?
时间片完了、阻塞了、运行完了、被抢占了。
7、在抢占式调度算法中,应遵循的原则?
优先级、短进程优先、时间片原则。
8、在选择调度算法时应该遵循哪些规则?
公平性、资源利用率、平衡性、强制执行
9、何谓静态优先级?何谓动态优先级?确定优先级的依据是什么?
(1)、静态优先级创建进程时就确定,动态优先级随着时间与环境变化而改变。
(2)、用户要求,进程对cpu io等资源的要求,进程类型。
课件操作系统处理机调度.ppt

(2) 作业步(Job Step)。每个作业都必须经过若干个相对 独立,又相互关联的顺序加工步骤才能得到结果,把其中的每 一个加工步骤称为一个作业步,各作业步之间存在着相互联系, 上一个作业步的输出作为下一个作业步的输入。 一个典型的作业可分成三个作业步: ① “编译”作业步; ② “连结装配”作业步;
1.仅有进程调度的调度队列模型
(1)在分时系统中,仅仅设有进程调度。 (2)用户键入的命令和数据都直接送入内存。对于命令, 是由OS为之建立一个进程。 (3)系统可以把处于就绪状态的进程组织成栈、树或一个 无序链表。 例如:就绪进程组织成FIFO队列形式。每当OS创建一个 新进程时,便将它挂在就绪队列的末尾,然后按时间片轮转方 式运行。
2. 优先权的类型 1) 静态优先权是在创建进程时确定的,且在进程的整个 运行期间保持不变。一般地,优先权是利用某一范围内的 一个整数来表示的。
(1) 进程类型。 (2) (2) 进程对资源的需求。 (3) (3) 用户要求。 静态优先权法简单易行,系统开销小,但不够精确, 很可能出现优先权低的作业(进程)长期没有被调度的情况。 因此,仅在要求不高的系统中才使用静态优先权。
• 也称微观调度,从处理机资源分配的角度来 看,即占有CPU来运行。 • 处理机需要经常选择就绪进程或线程进入运 行状态。
• 低级调度的时间尺度通常是毫秒级的。由于 低级调度算法的频繁使用,要求在实现时做到 高效。
低级调度的主要功能
(1) 保存处理机的现场信息。
(2) 按某种算法选取进程。 如优先数算法、轮转法等,从就绪队列中选取一个进程, 把它的状态改为运行状态,并准备把处理机分配给它。 (3) 把处理器分配给进程。
图 3-4 FCFS和SJF调度算法的性能
2016___操作系统处理器调度

JCB的主要内容包括: (1)作业情况 (2)资源需求 (3)资源使用情况 (4)作业控制 (5)作业类型
作业调度与进程调度的关系
SPOOLin g作业预 输入 输 入 状 态 预输 入完 成 进程调度 后 备 状 态 就 绪 等 待 完
运 行
成 状 态
SPOOLin g作业缓 输出
作业调度(选 中并创建进程)
作业控制
作业调度(作 业终止并撤离)
3)批作业的调度
(1) 选择作业: (2) 分配资源: (3) 创建进程: (4) 作业控制: (5) 后续处理:
2 交互作业的组织和管理
• 分时系统的作业就是用户的一次上机交互过程, 可认为终端进程的创建是一个交互型作业的开始, 退出命令运行结束代表用户交互型作业的中止。 • 交互作业的情况和资源需求通过操作命令告知系 统,分时用户逐条输入命令,即提交作业(步) 和控制作业运行,系统则逐条执行并给出应答, 每键入一条或一组有关操作命令,便在系统内部 创建一个进程或若干进程来完成相应命令。 • 键盘命令有:作业控制类;资源申请类;文件操 作类;目录操作类;设备控制类等。
响应比定义
响应比 =(等待时间 + 要求执行时间) / 要求 执行时间=1+等待时间/要求执行时间 •短作业容易得到较高响应比, •长作业等待时间足够长后,也将获得足 够高的响应比, •饥饿现象不会发生。
HRRF算法举例
四个作业到达系统时间/所需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、2、3、4,平均作业周转 时 间 T=28.75 , 平 均 带 权 作 业 周 转 时 间 W=3.125 。 • HRRF 调度顺序为作业 1 、 3 、 2 、 4 ,平均作业周 转 时 间 T=26.25 , 平 均 带 权 作 业 周 转 时 间 W=2.46 。
低级调度,中级调度,高级调度的区别

低级调度,中级调度,高级调度的区别低级调度、中级调度、高级调度是计算机操作系统中的重要概念,用于提供有效的任务管理和资源调度,以保证系统的高效运行。
这三种调度策略主要在任务优先级,调度时间和调度数量等方面存在差异。
下面我们将分别从这三个角度来详细介绍低级调度、中级调度、高级调度的区别。
首先,低级调度也称为进程调度,是针对就绪队列中的进程进行调度的一种策略。
低级调度的主要目标是尽快让就绪进程获得CPU的执行权,从而保证系统的响应速度。
低级调度采用的调度算法多为抢占式调度算法,如最短作业优先(SJF)、优先级调度等。
低级调度的调度时间短,一般是微秒级的时间片轮转,以确保CPU资源能够充分利用。
低级调度的调度数量较高,每个时间片段内,可能会有多个进程被调度,以提高系统的并发度。
其次,中级调度也称为作业调度,是针对外存中的作业进行调度的一种策略。
中级调度的主要目标是合理安排作业的提交和执行,以优化系统资源的利用率。
中级调度的调度算法主要有先来先服务(FCFS)和短作业优先(SJB)等,也可以依据作业的优先级进行调度。
中级调度的调度时间较长,一般是毫秒级的调度时间间隔,以确保作业提交和执行的效率。
中级调度的调度数量较低,每次调度只处理一个作业,以保证系统的稳定性和可靠性。
最后,高级调度也称为长程调度,是针对外存中的长程作业进行调度的一种策略。
高级调度的主要目标是合理调度作业的提交和执行,以充分利用系统的资源,并满足系统的性能指标。
高级调度的调度算法主要有多级反馈队列调度算法、最短剩余时间优先(SRT)和最短进程优先(SPN)等。
高级调度的调度时间较长,一般是秒级的调度时间间隔,以支持作业的长时间运行。
高级调度的调度数量较低,每次调度只处理少量作业,以保证系统的稳定性和高效性。
综上所述,低级调度、中级调度、高级调度在任务优先级、调度时间和调度数量等方面存在明显差异。
低级调度更加关注系统的响应速度,采用抢占式调度算法,调度时间短,调度数量较高。
处理机调度的层次

(1)截至时间的保证:所谓的截至时间,是指某认为必须开始执行的最迟时间,或者完成的最迟 时间。
(2)可预测性:例如在多媒体系统中,无论是电影还是电视剧都应该连续播放的ຫໍສະໝຸດ 这就提供了请 求的可预测性。三
个
层
次
处理机调度的层次
单击此处添加正文,文字是您思想的提炼,请尽量言简意赅的阐述观 点。
高级调度(High level Scheduling) 又称长调度或作业调度,它的调度对象时作业,其主要功能室根据某种算法, 决定将外存上处于后备队列中的哪几个作业调入内存,为它们创建进程,分配必要资 源,并将它们放入就绪队列。高级调度主要用于多道批处理系统,而在分时系统中不 设置高级调度。 低级调度(Low level Scheduling) 又称为进程调度或短程调度,其调度的对象时进程(或内核级的线程)。主要 功能是,根据某种算法,决定就绪队列中的哪个进程获得处理机。 中级调度(Intermediate Scheduling) 又称为内存调度,目的是提高内存利用率和系统吞吐量。为此应把那些战士不 能允许的进程,调至外存等待,此时进程的状态称为就绪驻外存状态。
评价因素 吞吐量 单位时间内CPU完成作业的数量。 CPU利用率 从0%~100%。 周转时间 评价批处理系统的性能指标。 Ti = 作业完成时刻 - 作业提交时刻 确定进程调度原则 在系统角度来说, 公平性:每个进程(不论优先级)都有机会被运行;较大的吞吐量。 用户角度, 及时性:响应速度要快;较短的周转时间:不应当让用户等待时间过长。
2.批处理系统的目标
(1)平均周转时间短。周转时间是指从作业被提交给系统开始,到作业完成为止的这段时间间隔。 (2)系统吞吐量高:吞吐量是指在单位时间内系统所完成的作业数,因而它与批处理作业的平均 长度有关。 (4)处理机利用率高
计算机操作系统部分习题解答

1.高级调度与低级调度的主要任务是什么?为什么要引入中级调度?答:高级调度主要任务是根据某种算法,把外存上处于后备队列中的那些作业调入内存,也就是说高级调度的调度对象是作业。
低级调度主要任务是:决定就绪队列中的哪个进程应获得处理机,.然后再由分派程序执行把处理机分配给该进程的具体操作。
中级调度的任务:使那些暂时不能运行的进程不再占用宝贵的内存资源,而将它们调至外存上去等待,把此时的进程状态称为就绪驻外存状态或挂起状态。
当这些进程重又具备运行条件且内存又稍有空闲时,由中级调度来决定把外存上的那些又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上等待进程调度。
引入中级调度的主要目的是为了提高内存利用率和系统吞吐量。
2.处理机调度算法的共同目标是什么?批处理系统的调度目标又是什么?答:共同目标:资源利用率,公平性,平衡性,策略强制执行。
批处理系统的调度目标:平均周转时间短,系统吞吐量高,处理机利用率高。
3.在批处理系统、分时系统和实时系统中,各采用哪几种进程(作业)调度算法?答:批处理系统的调度算法:短作业优先、优先权、高响应比优先、多级反馈队列调度算法。
分时系统的调度算法:时间片轮转法。
实时系统的调度算法:最早截止时间优先即EDF、最低松弛度优先即LLF算法。
4.何谓“优先级倒置”现象,可采取什么方法来解决?答:当前0S广泛采用优先级调度算法和抢占方式,然而在系统中存在着影响进程运行的资源而可能产生“优先级倒置”的现象,即高优先级进程(或线程)被低优先级进程(或线程)延迟或阻塞。
5.何谓"死锁"?产生死锁的原因和必要条件是什么?答:死锁:是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。
产生死锁的原因:(1)竞争资源。
(2)进程间推进顺序非法。
产生死锁的必要条件:(1)互斥条件;(2)请求和保持条件;(3)不剥夺条件;(4)环路等待条件。
处理机调度的基本概念

W
1 n
n i1
Ti TSi
1. 面向用户的准则
(2) 响应时间快。 (3) 截止时间的保证。 (4) 优先权准则。
2. 面向系统的准则
(1)系统吞吐量高。 (2) 处理机利用率好。 (3) 各类资源的平衡利用。
操作系统
可能引起进程调度的因素可归结为这样几个:① 正在执行的进程执行完 毕, 或因发生某事件而不能再继续执行; ② 执行中的进程因提出I/O请 求而暂停执行;③ 在进程通信或同步过程中执行了某种原语操作,如P操 作(wait操作)、Block原语、Wakeup原语等。这种调度方式的优点是实现 简单、系统开销小,适用于大多数的批处理系统环境。但它难以满足紧 急任务的要求——立即执行,因而可能造成难以预料的后果。显然,在要 求比较严格的实时系统中,不宜采用这种调度方式。
1.2 调度队列模型
1.仅有进程调度的调度队列模型
时间 片完
交互 用户
事 件 出 现
就绪 队列 阻塞 队 列
进程 调度
进程 完成 CP U
调度队列模型
2. 具有高级和低级调度的调度队列模型
作业 调度
后 备队 列
时间 片完 就绪 队 列
进程 调度
进程 完成 CP U
事
件 出
挂起
现
阻塞 队列
等待 事件
图 3-3 具有三级调度时的调度队列模型
1.3 选择调度方式和调度算法的若干准则
1. 面向用户的准则
(1)周转时间短。 可把平均周转时间描述为:
T
1 n
i i1
Ti
作业的周转时间T与系统为它提供服务的时间TS之比,即W=T/TS,称为
带权周转时间,而平均带权周转时间则可表示为:
计算机操作系统第三章

计算机操作系统第三章1.⾼级调度与低级调度的主要任务是什么?为什么要引⼊中级调度?⾼级调度主要功能是根据某种算法,决定将外存上处于后备队列中的哪⼏个作业调⼊内存,为它们创建进程,分配必要的资源,并将它们放⼊就绪队列。
低级调度主要功能是根据某种算法,决定就绪队列中的哪个进程应获得处理机,并由分派程序将处理机分配给被选中的进程。
引⼊中级调度的主要⽬的是,提⾼内存利⽤率和系统吞吐量。
使那些暂时不能运⾏的进程不再占⽤内存资源,将它们调⾄外存等待,把进程状态改为就绪驻外存状态或挂起状态。
2.处理机调度算法的共同⽬标是什么?批处理系统的调度⽬标⼜是什么?共同⽬标:资源利⽤率,公平性,平衡性,策略强制执⾏。
批处理系统的调度⽬标:平均周转时间短,系统吞吐量⾼,处理机利⽤率⾼。
3.何谓作业、作业步和作业流?作业:作业是⼀个⽐程序更为⼴泛的概念,它不仅包含了通常的程序和数据,⽽且还应配有⼀份作业说明书,系统根据该说明书来对程序的运⾏进⾏控制。
在批处理系统中,是以作业为基本单位从外存调⼊内存的。
作业步:通常,在作业运⾏期间,每个作业都必须经过若⼲个相对独⽴⼜相互关联的顺序加⼯步骤才能得到结果。
我们把其中的每⼀个加⼯步骤称为⼀个作业步。
各作业步之间存在着相互联系,往往是上⼀个作业步的输出作为下⼀个作业步的输⼊。
作业流:是指若⼲个作业进⼊系统后依次存放在外存上形成的输⼊作业流,在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。
4.在什么情况下需要使⽤作业控制块JCB,其中包含了哪些内容?每当⼀个作业进⼊系统时,便由“作业注册”程序为该作业建⽴⼀个作业控制块JCB。
再根据作业类型,将它放到相应的作业后背队列中等待调度。
通常在JCB中包含的内容有:作业标识、⽤户名称、⽤户账户、作业类型(CPU繁忙型、I/O繁忙型、批量型、终端型)、作业状态、调度信息(优先级、作业运⾏时间)、资源请求(预计运⾏时间、要求内存⼤⼩等)、资源使⽤情况等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 调度类型
高级调度——作业调度
批处理系统中使用,周期较长。
低级调度——进程调度
是最基本的一种调度,在三种类型的OS中都必须配置。
进程调度可采用非抢占或抢占两种方式。
其中抢占方式允许调度程序根据某种原则,例时间片原则、优先权原则、短进程优先原则等去停止某个正在执行的进程,将已分配给该进程的处理机,重新分配给另一进程。
进程调度的运行频率最高,故算法不能太复杂。
中级调度——引入中级调度的目的是为了提高内存的利用率和系统吞吐量。
中级调度实际上是存储器管理中的对换功能。
2. 调度队列模型
3. 选择调度方式和算法的准则
周转时间(批处理)
面向用户响应时间(分时)
的准则截止时间的保证(实时)
优先权准则
面向系统系统吞吐量高(批处理)
的准则处理机利用率好
各类资源的平衡利用
周转时间——指作业提交系统开始,到作业完成为止的时间间隔。
带权周转时间——作业的周转时间与系统为它提供的实际服务时间之
比。
W=T/TS
响应时间——从用户通过键盘提交一个请求开始,直至系统首次产生响应为止的时间。
截止时间——某任务必须开始执行的最迟时间,或必须完成的最迟时间。
吞吐量——单位时间内所完成的作业数。
4. 调度算法(作业调度、进程调度)
先来先服务调度算法(FCFS)
按进入后备(或就绪)队列的先后选择目标作业(或进程)。
有利于长作业(进程),不利于短作业(进程)。
最短作业优先调度算法SJ(P)F
从后备(或就绪)队列中选择估计运行时间最短的作业(或进程)tn+1=a tn+(1-a) tn tn为实际值,tn为预测值
SJF有效地降低作业的平均等待时间,提高了系统的吞吐量。
对长作业(或进程)不利,可能死等,且未考虑作业的紧迫程度。
时间片轮转调度算法(进程调度)
系统将所有的就绪进程按先来先服务原则,排成一个队列,每次调度时把CPU分配给队首进程,令其执行一个时间片。
就绪队列中所有进程,在一个给定的时间内,均能获得一个时间片的处理机执行时间。
T=nq
优先权调度算法
适用于作业调度和进程调度。
非抢占式、抢占式优先权调度算法
优先权类型:静态优先权、动态优先权
高响应比优先调度算法(作业调度)
响应比RP= 响应时间/要求服务时间=(等待时间+要求服务时间)/要求服务时间= 1+等待时间/要求服务时间
同时到达的作业(等待时间相同),要求服务时间越短(短作业),响应比越高,有利于短作业。
要求服务时间相同的作业,等待时间越长,响应比越高,相当于先来先服务。
长作业在等待足够长时间后,响应比上升,也可被调度,避免长作业的死等。
每次调度需计算响应比,增加系统的开销。
多级队列调度
根据作业的性质或类型的不同,将就绪进程队列分成若干个子队列,各个作业固定分属于一个队列。
每个队列采用各自的调度算法。
多级反馈队列调度算法
UNIX系统中的进程调度算法。
处理方法:
设置多个就绪队列,每个队列赋予不同的优先权(S1>S2……>Sn ),且各队列中进程执行的时间片的大小各不相同(q,2q……nq)。
新进程进入内存,首先放在S1的末尾,按FCFS排队调度,执行q 时间片,若未完成,该进程转入S2,依次类推。
仅当Si空闲,才会调度Si+1中进程。
能较好地满足各种类型用户的需要。