第三章 调度和死锁
- 格式:doc
- 大小:90.50 KB
- 文档页数:8
第三章处理机调度与死锁1,高级调度与低级调度的主要任务是什么?为什么要引入中级调度?【解】(1)高级调度主要任务是用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程,分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。
(2)低级调度主要任务是决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。
(3)引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。
为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。
当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。
3、何谓作业、作业步和作业流?【解】作业包含通常的程序和数据,还配有作业说明书。
系统根据该说明书对程序的运行进行控制。
批处理系统中是以作业为基本单位从外存调入内存。
作业步是指每个作业运行期间都必须经过若干个相对独立相互关联的顺序加工的步骤。
作业流是指若干个作业进入系统后依次存放在外存上形成的输入作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。
4、在什么情冴下需要使用作业控制块J CB?其中包含了哪些内容?【解】每当作业进入系统时,系统便为每个作业建立一个作业控制块JCB,根据作业类型将它插入到相应的后备队列中。
JCB 包含的内容通常有:1) 作业标识2)用户名称3)用户账户4)作业类型(CPU繁忙型、I/O芳名型、批量型、终端型)5)作业状态6)调度信息(优先级、作业已运行)7)资源要求8)进入系统时间9) 开始处理时间10) 作业完成时间11) 作业退出时间12) 资源使用情况等5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?【解】作业调度每次接纳进入内存的作业数,取决于多道程序度。
第三章处理机调度与死锁1,高级调度与低级调度的主要任务是什么?为什么要引入中级调度?【解】(1)高级调度主要任务是用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程,分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。
(2)低级调度主要任务是决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。
(3)引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。
为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。
当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。
3、何谓作业、作业步和作业流?【解】作业包含通常的程序和数据,还配有作业说明书。
系统根据该说明书对程序的运行进行控制。
批处理系统中是以作业为基本单位从外存调入内存。
作业步是指每个作业运行期间都必须经过若干个相对独立相互关联的顺序加工的步骤。
作业流是指若干个作业进入系统后依次存放在外存上形成的输入作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。
4、在什么情冴下需要使用作业控制块JCB?其中包含了哪些内容?【解】每当作业进入系统时,系统便为每个作业建立一个作业控制块JCB,根据作业类型将它插入到相应的后备队列中。
JCB 包含的内容通常有:1) 作业标识2)用户名称3)用户账户4)作业类型(CPU 繁忙型、I/O芳名型、批量型、终端型)5)作业状态6)调度信息(优先级、作业已运行)7)资源要求8)进入系统时间9) 开始处理时间10) 作业完成时间11) 作业退出时间12) 资源使用情况等5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?【解】作业调度每次接纳进入内存的作业数,取决于多道程序度。
第三章处理机调度与死锁一、单项选择题1、操作系统中的作业管理是一种(A )。
A.宏观的高级管理B.宏观的低级管理C.系统刚开始加电D.初始化引导完成2、作业调度又称为[1A],它决定将哪些在外存储器上的处于[2D]状态的作业调入主机内存。
系统经作业调度程序选中一个或多个作业后,就为它们分配必要的内存、设备及软资源。
然后控制权就交给了[3B],由[3]将它们变为一个或一组[4C],并[5A]。
供选择的答案:[1]: A、高级调度 B、低级调度 C、中级调度 D、进程调度[2]: A、就绪 B、阻塞 C、提交 D、后备[3]: A、存储管理模块 B、处理机管理模块 C、文件管理模块 D、设备管理模块[4]: A、指令 B、子程序 C、进程 D、程序段[5]: A、把它们挂到就绪队列上 B、为它们分配处理机C、把它们挂到后备队列上D、为它们分配设备3、处于后备状态的作业存放在(A )中。
A.外存B.内存C.A和BD.扩展内存4、在操作系统中,JCB是指(A )。
A.作业控制块B.进程控制块C.文件控制块D.程序控制块5、作业在系统中存在与否的唯一标志是( C)。
A.源程序B.作业说明书C.作业控制块D.目的程序6、按照作业到达的先后次序调度作业,排队等待时间最长的作业被优先调度,这是指(A)调度算法。
A.先来先服务法B. 短作业优先法C.时间片轮转法D. 优先级法7、在批处理系统中,周转时间是(B )。
A.作业运行时间B.作业等待时间和运行时间之和C.作业的相对等待时间D.作业被调度进入内存到运行完毕的时间8、为了对紧急进程或重要进程进行调度,调度算法应采用( B)。
A.先来先服务法B. 优先级法C.短作业优先法D. 时间片轮转法9、操作系统中,( A)负责对进程进行调度。
A.处理机管理B. 作业管理C.高级调度管理D. 存储和设备管理10.如果系统中所有作业是同时到达的,则使作业平均周转时间最短的作业调度算法是短作业优先调度算法。
第三章处理机调度与死锁1. 高级调度与低级调度的主要任务是什么?为什么要引入中级调度?高级调度的主要任务:用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程,分配必要的资源,然后,再将新创建的进程插入就绪队列上,准备执行。
低级调度的主要任务:用于决定就绪队列中的哪个进程应获得处理机,然后再由分派程序执行将处理机分配给该进程的具体操作。
引入中级调度的主要目的:是为了提高系统资源的利用率和系统吞吐量。
10. 试比较FCFS和SPF两种进程调度算法相同点:两种调度算法都是既可用于作业调度,也可用于进程调度;不同点:FCFS调度算法每次调度都是从后备队列中选择一个或是多个最先进入该队列的作业,将它们调入内存,为它们分配资源,创建进程,然后插入到就绪队列中。
该算法有利于长作业/进程,不利于短作业/进程。
SPF调度算法每次调度都是从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存中运行。
该算法有利于短作业/进程,不利于长作业/进程。
15. 按调度方式可将实时调度算法分为哪几种?按调度方式不同,可分为非抢占调度算法和抢占调度算法两种。
18. 何谓死锁?产生死锁的原因和必要条件是什么?a.死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进;b.产生死锁的原因有二,一是竞争资源,二是进程推进顺序非法;c.必要条件是: 互斥条件,请求和保持条件,不剥夺条件和环路等待条件。
19.在解决死锁问题的几个方法中,哪种方法最易于实现?哪种方法是资源利用率最高?解决/处理死锁的方法有预防死锁、避免死锁、检测和解除死锁,其中预防死锁方法最容易实现,但由于所施加的限制条件过于严格,会导致系统资源利用率和系统吞吐量降低;而检测和解除死锁方法可是系统获得较好的资源利用率和系统吞吐量。
20. 请详细说明可通过哪些途径预防死锁?a.摒弃"请求和保持"条件:系统规定所有进程开始运行之前,都必须一次性地申请其在整个运行过程所需的全部资源,但在分配资源时,只要有一种资源不能满足某进程的要求,即使其它所需的各资源都空闲,也不分配给该进程,而让该进程等待;b.摒弃"不剥夺"条件:系统规定,进程是逐个地提出对资源的要求的。
第三章处理机调度与死锁1,高级调度与低级调度的主要任务是什么?为什么要引入中级调度?【解】(1)高级调度主要任务是用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程,分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。
(2)低级调度主要任务是决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。
(3)引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。
为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。
当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。
3、何谓作业、作业步和作业流?【解】作业包含通常的程序和数据,还配有作业说明书。
系统根据该说明书对程序的运行进行控制。
批处理系统中是以作业为基本单位从外存调入内存。
作业步是指每个作业运行期间都必须经过若干个相对独立相互关联的顺序加工的步骤。
作业流是指若干个作业进入系统后依次存放在外存上形成的输入作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。
4、在什么情冴下需要使用作业控制块JCB?其中包含了哪些内容?【解】每当作业进入系统时,系统便为每个作业建立一个作业控制块JCB,根据作业类型将它插入到相应的后备队列中。
JCB 包含的内容通常有:1) 作业标识2)用户名称3)用户账户4)作业类型(CPU 繁忙型、I/O芳名型、批量型、终端型)5)作业状态6)调度信息(优先级、作业已运行)7)资源要求8)进入系统时间9) 开始处理时间10) 作业完成时间11) 作业退出时间12) 资源使用情况等5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?【解】作业调度每次接纳进入内存的作业数,取决于多道程序度。
第3章处理机调度与死锁(处理机调度)-选择题1.时间片轮转调度算法是为了()A.多个用户能及时干预系统B.使系统变得高效C.优先级较高的进程得到及时响应D.需要CPU时间最少的进程最先做2.在单处理器多进程系统中,进程什么时候占用处理器及决定占用时间的长短是由()决定的A.进程相应的代码长度B.进程总共需要运行的时间C.进程特点和进程调度策略D.进程完成什么功能3.()有利于CPU繁忙型的作业,而不利于I/O繁忙型的作业。
A.时间片轮转调度算法B.先来先服务调度算法C.短作业(进程)优先算法D.优先权调度算法4.下面有关选择进程调度算法的准则中,不正确的是()A.尽快响应交互式用户的请求B.尽量提高处理器利用率C.尽可能提高系统吞吐量D.适当增长进程就绪队列的等待时间5.设有4个作业同时到达,每个作业的执行时间均为2h,它们在一台处理器上按单道式运行,则平均周转时间为()A.1hB.5hC.2.5hD.8h6.若每个作业只能建立一个进程,为了照顾短作业用户,应采用();为了照顾紧急作业用户,应采用();为了能实现人机交互,应采用();而能使短作业、长作业和交互作业用户都满意,应采用()A.FCFS调度算法B.短作业优先调度算法C.时间片轮转调度算法D.多级反馈队列调度算法E.剥夺式优先级调度算法7.()优先级是在创建进程时确定的,确定之后在整个运行期间不再改变A.先来先服务B.动态C.短作业D.静态8.现在有三个同时到达的作业J1、J2和J3,它们的执行时间分别是T1、T2、T3且T1<T2<T3。
系统按单道方式运行且采用短作业优先调度算法,则平均周转时间是()A.T1+T2+T3B.(3T1+2T2+T3)/3C.(T1+T2+T3)/3D.(T1+2T2+3T3)/39.设有三个作业,其运行时间分别是2h、5h、3h,假定它们同时到达,并在同一台处理器上以单道方式运行,则平均周转时间最小的执行顺序是()A.J1,J2,J3B.J3,J2,J1C.J2,J1,J3D.J1,J3,J210. 【2013统考真题】某系统正在执行三个进程P1、P2和P3,各进程的计算(CPU时间和I/O 时间比例如下表所示进程计算时间I/O时间P1 90% 10%P2 50% 50%P3 15% 85%提高系统资源利用率,合理的进程优先级设置应为()A.P1>P2>P3B. P3>P2>P1C. P2>P1=P3D. P1>P2=P311.采用时间片轮转调度算法分配CPU时,当处于运行态的进程完一个时间片后,它的状态是()状态A.阻塞B.运行C.就绪D.消亡12.一个作业8:00到达系统,估计运行时间为1h。
处理机调度与死锁习题及答案新第三章处理机调度与死锁一.选择题1.下列算法中,操作系统用于作业调度的算法是。
A.先来先服务算法B.先进先出算法C.最先适应算法D.时间片轮转算法2.在批处理系统中,周转时间是指。
A.作业运行时间B.作业等待时间和运行时间之和C.作业的相对等待时间D.作业被调度进入内存到运行完毕的时间3.在作业调度中,排队等待时间最长的作业被优先调度,这是指调度算法。
A.先来先服务B.短作业优先C.响应比高优先D.优先级4.下列算法中,用于进程调度的算法是。
A.最先适应B.最高响应比优先C.均衡资源调度D.优先数调度5.两个进程争夺同一个资源。
A.一定死锁B.不一定死锁C.只要互斥就不会死锁D.以上说法都不对6.下列各项中,不是进程调度时机的是。
A.现运行的进程正常结束或异常结束B.现运行的进程从运行态进入就绪态C.现运行的进程从运行态进入等待态D.有一进程从等待态进入就绪态7.进程调度算法有多种,不是进程调度算法。
A.先来先服务调度算法B.最短查找时间优先调度算法C.静态优先数调度算法D.时间片轮转调度算法8.作业调度程序从状态的队列中选取适当的作业投入运行。
A.就绪B.提交C.等待D.后备9.在实时操作系统中,经常采用调度算法来分配处理器。
A.先来先服务B.时间片轮转C.最高优先级D.可抢占的优先级10.采用时间片轮转调度算法主要是为了。
A.多个终端都能得到系统的及时响应B.先来先服务C.优先权高的进程及时得到调度D.需要CPU时间最短的进程先做11.下面关于优先权大小的论述中,不正确的论述是。
A.计算型作业的优先权,应低于I/O型作业的优先权B.系统进程的优先权应高于用户进程的优先权C.资源要求多的作业,其优先权应高于资源要求少的作业D.在动态优先权时,随着进程运行时间的增加,其优先权降低12.产生死锁的原因是有关。
A.与多个进程竞争CPUB.与多个进程释放资源C.仅由于并发进程的执行速度不当D.除资源分配策略不当外,也与并发进程执行速度不当13.有关产生死锁的叙述中,正确的是。
第三章调度和死锁
一、单选题
1、在就绪队列中有n个进程等待使用一个cpu,那么如果采用拥有同一种调度算法,总共可能有()种调度顺序
A. n
B. n2
C. n( n-1)/2
D. n!
2、现在有三个同时到达的作业A,B,C,它们的执行时间分别是t1,t2,t3,且t1<t2<t3. 系统按照单道方式运行且采用短作业优先调度算法,则平均周转时间是()。
A. t1+t2+t3
B. (t1+t2+t3)/3
C. (3t1+2t2+t3)/3
D. (t1+2t2+3t3)/3
3、有5个批处理作业A,B,C,D,E几乎同时到达,其预计运行时间分别是10,6,2,4,8, 其优先级(由外部设定)分别是3,5,2,1,4,这里5是最高优先级,以下各种调度算法中平均周转时间为14的是()。
A. 时间片轮转
B. 优先级服务
C. 先来先服务(按照次序10,6,2,4,8)
D. 短作业优先
4、对于处理机调度中的高响应比优先调度算法,通常影响响应比的主要因素是()。
A. 程序长度
B. 静态优先数
C. 运行时间
D. 等待时间
5、下列选项中满足短任务优先并且不会发生饥饿现象的是()。
A.先来先服务 B. 高响应比优先 C. 时间片轮转 D. 非抢占式短任务优先6、在一个单CPU的系统中,I/O1和I/O2 是两个不同的输入/输出设备,它们能够同时工作。
当使用CPU之后控制转向I/O1和I/O2时,或者使用I/O1和I/O2 之后控制转向CPU时,由控制程序执行中断处理,但是这段处理时间可以忽略不计。
有A、B两个进程同时被创建,进程B的调度优先级比进程A高,但是当进程A正在使用CPU时,即时进程B需要占用CPU,也不能打断进程A的
执行。
若在同一系统中分别单独执行,则需要占用CPU、I/O1、I/O2的时间分别如下:
进程A:
进程B:
经过计算可以知道,()执行结束。
A. 进程A
B. 进程B
C. 进程A和进程B同时结束
D. 不一定
7、支持多道程序设计的操作系统在运行的过程中,不断地选择新进程运行来实现CPU的共享,但其中()不是引起操作系统选择新进程的直接原因。
A. 运行进程的时间片用完 B. 运行进程出错
C. 运行进程要等待某一时刻
D. 有新进程进入就绪队列
8、死锁的预防是根据()而采取措施实现的。
A. 配置足够的系统资源
B. 使进程的推进顺序合理
C. 破坏死锁的四个必要条件之一
D. 防止系统进入不安全状态
9、某系统中有11台打印机,N个进程共享打印机资源,每个进程要求3台,但N的取值不超过()时,系统不会发生死锁。
A. 4
B. 5
C. 6
D.7
10、某个计算机系统中共有8台打印机,由K个进程竞争使用,每个进程最多需要3台打印机,该系统可能会发生死锁的K的最小值是()
A.2
B. 3
C. 4
D. 5
提示:由银行家算法可以推出,要使系统安全,对于系统中有m个资源,有n 个并发进程共享使用时,每个进程可以提出的最大资源请求数量为x时,则有n(x-1)+1<=m
11、某系统中有3个并发进程,且都需要同类资源4个,试问该系统不会发生死锁的最小资源数目是()
A. 9
B. 10
C. 11
D. 12
12、死锁定理是用于处理死锁方法中的()方法。
A. 预防死锁
B. 避免死锁
C. 检测死锁
D. 解除死锁
13、某时刻进程对资源的使用情况如下所示,此时系统中的安全序列是()。
二、综合题
1、一个作业从提交开始直到运行结束,可能经过哪些调度?每种调度的功能是什么?若在后备作业队列中同时等待运行的有3个作业A、B、C,已知它们各自的运行时间a、b、c, 其满足a<b<c,证明采用短作业优先调度算法能获得最小
平均周转时间。
并说明短作业优先调度算法会产生什么问题。
2、有5个待执行的作业,分别是A、B、C、D、E,各自估计运行的时间是9,6,3,5,x.试问采用哪种运行次序使平均周转时间最短,其平均周转时间是多少?(提示:答案依赖于x )
3、系统中有5个就绪进程,其就绪时刻(指在该时刻已经在就绪队列中就绪)、服务时间如表所示。
若采用先来先服务、短作业优先、高响应比优先、时间片轮转调度算法(时间片为1),计算相关的平均周转时间和平均带权周转时间。
4、系统中有5个进程,每个进程的运行时间(单位为ms)、优先级和到达时刻如表所示,请给出当系统采用时间片轮转算法(时间片为1ms,此时不考虑进程的优先级)、不可抢占优先级调度和抢占式优先级调度算法时,各进程的运行情况。
其中优先级越大越优先得到执行。
5、假设要在一台处理机上执行如下表所示的作业,其中优先数小的优先级高。
并且假定作业的到达次序为1,2,3,4,5。
用甘特图来说明分别使用FCFS、时间片轮转(时间片=1)、SJF及非抢占优先级调度算法时这些作业的执行情况:针对上述的每一种调度算法,求出每个作业相应的周转时间;就上述的每一种调度算法,,求出每个作业的相应的等待时间。
甘特图:又叫横道图。
它是以图示的方式通过活动列表和时间刻度形象地表示出任何特定项目的活动顺序与持续时间。
6、某个进程被唤醒之后立即投入运行,就说这个系统采用的是剥夺式调度方式,对吗?为什么?
7、将一组就绪进程分为4类,如下图所示。
各类进程之间采用优先级调度,而各类进程的内部采用时间片轮转调度。
请简述P1,P2,P3,P4,P5,P6,P7,P8进程的调度过程。
优先级4 (最高)→P1→P2→P3
优先级3→P4→P5
优先级2→P6→P7→P8
优先级1(最低)
注意:在进程调度过程中可能有些进程运行一段时间后会处于阻塞状态。
8、假设一个计算机系统具有以下性能特征:处理一次中断,平均耗用1ms,一次进程调度,平均需要2ms,将CPU分配给选中的进程,平均需要1ms。
再假设其定时器芯片每秒产生100次中断。
请回答:操作系统将百分之几的CPU时间用于时钟中断?如果采用时间片轮转调度算法,10个时钟中断为1个时间片。
那么,操作系统将百分之几的CPU时间用于进程调度(包括调度、分配CPU和引起调度的时钟中断处理时间)?
9、有两个程序,A程序按顺序使用CPU 10s,使用设备甲5s,使用CPU 5s,使用设备乙10s,最后使用CPU 10s。
B程序按顺序使用设备甲10s,使用CPU 10s,使用设备乙5s,使用CPU 5s,最后使用设备乙10s。
在顺序环境下先执行A,再执行B,CPU 的使用效率是多少?
10、假定就绪队列中有10个进程,系统将时间片设定为200ms,CPU进行进程切换需要10ms,试问系统开销所占的比率大约是多少?
11、在单CPU和两台输入/输出设备(I1,I2)的多道程序设计环境下,同时投入3个作业Job1,Job2,Job3运行,这三个作业对CPU和输入/输出设备的使用顺序和时间如下所示:
Job1: I2(30ms);CPU (10ms);I1(30ms);CPU( 10ms);I2( 20ms)
Job2: I1(20ms);CPU (20ms);I2(40ms)
Job3: CPU (30ms);I1(20ms) ;CPU(10ms);I1(10ms)
假定CPU, I1,I2都能并行工作,Job1优先级最高,Job2 次之,Job3 优先级最低,优先级高的作业可以抢占优先级的作业的CPU,但是不能抢占I1和I2。
试求:(1)3个作业从投入到完成分别需要的时间
(2)从投入到完成的CPU的利用率。
(3)I/O设备的使用率。
12、设系统中仅有一类数量为M的独占型资源,系统中有N个进程竞争使用,其中各进程对该类资源的最大需求量是W,当M、N、W分别取下列值时,试判断下列情况哪些会发生死锁,为什么?
13、银行家算法的主要思想是什么?它能够用来解决实际中的死锁问题吗?为什么?
14、设系统中有3种类型的资源A,B,C和5个进程P1,P2,P3,P4,P5,系统提供的A,B,C三类资源的数量分别是17,5,20。
在T0 时刻系统的状态如表所示,系统采用银行家算法实施死锁避免策略。
1)T0 时刻系统是否处于安全状态?若是,请给出安全序列。
2)若在T0 时刻进程P2请求资源(0,3,4),能否实施资源分配?为什么?3)在2)题的基础上,若进程P4 请求资源(2,0,1),是否能实施资源分配?为什么?
4)在3)题的基础上,若进程P1 请求资源(0,2,0),是否能实施资源分配?为什么?
15、假定系统有R1和R2 两类资源,其中R1有2个,R2有1个,它们被进程P1和P2 共享,且已知两个进程均以下列顺序使用这两类资源:
→申请R1→申请R2→申请R1→释放R1→释放R2→释放R1
试求出系统运行过程中可能达到的死锁点,并画出死锁点的资源分配图(或称进程-资源图)。