第3章死锁习题及答案
计算机操作系统习题3-调度与死锁
P(S1)
13
V(S2)
23
V(S1)
14
V(S1)
24
V(S2)
(1)试分析各种推进速度可能引起的情况;(2)用产生死锁的必 要条件解释产生死锁和不产生死锁原因。
2、考虑如下交通死锁问题:
(1)试说明产生死锁的四个必要条件在此例中均成立;(2)请建 立一种规则,以避免死锁的发生。
进程 到到就绪队列时刻 执行时间(ms) 优先数
P1
0
3
3
P2
2
6
5
P3
4
4
1
P4
6
5
2
P5
8
2
4
(1)FCFS调度算法;(2)时间片轮转调度算法(时间片为 1ms);(3)剥夺式短进程优先调度算法;(4)剥夺式优先级调度算 法;(5)非剥夺式优先级调度算法。
2、在银行家算法中,有下表所示资源分配情况:
A、进程优先权 B、时间片大小 C、进程的推进顺序 D、分配队列优先权
9、为了系统中各部分资源得到均衡使用,以提高系统的效率,就必 须选择对资源需求不同的作业进行合理搭配。这项工作是由( )完 成的。
A、作业调度 B、中级调度 C、进程调度 D、内存调度
10、既考虑作业等待时间,又考虑作业完成时间的调度算法是 ( )
13、一个作业进入主存后,所属该作业的进程初始时处于( ) 状态。 A、运行 B、等待 C、就绪 D、后备
14、作业周转时间为( ) A、作业开始时间-作业提交时间 B、作业等待时间+作业运行 时间 C、作业等待时间 D、作业运行时间
15、按序分配资源是为了( ) A、死锁的检测 B、死锁的预防 C、死锁的避免 D、死锁 的解除
第3章死锁习题及答案
第三章死锁习题一、填空题1.进程的“同步”和“互斥”反映了进程间①和②的关系。
【答案】①直接制约、②间接制约【解析】进程的同步是指在异步环境下的并发进程因直接制约而互相发送消息,进行相互合作、相互等待,使得各进程按一定的速度执行的过程;而进程的互斥是由并发进程同时共享公有资源而造成的对并发进程执行速度的间接制约。
2.死锁产生的原因是①和②。
【答案】①系统资源不足、②进程推进路径非法【解析】死锁产生的根本原因是系统的资源不足而引发了并发进程之间的资源竞争。
由于资源总是有限的,我们不可能为所有要求资源的进程无限地提供资源。
而另一个原因是操作系统应用的动态分配系统各种资源的策略不当,造成并发进程联合推进的路径进入进程相互封锁的危险区。
所以,采用适当的资源分配算法,来达到消除死锁的目的是操作系统主要研究的课题之一。
3.产生死锁的四个必要条件是①、②、③、④。
【答案】①互斥条件、②非抢占条件、③占有且等待资源条件、④循环等待条件【解析】互斥条件:进程对它所需的资源进行排它性控制,即在一段时间内,某资源为一进程所独占。
非抢占条件:进程所获得的资源在未使用完毕之前,不能被其它进程强行夺走,即只能由获得资源的进程自己释放。
占有且等待资源条件:进程每次申请它所需的一部分资源,在等待新资源的同时,继续占有已分配到的资源,循环等待条件:存在一进程循环链,链中每一个进程已获得的资源同时被下一个进程所请求。
4.在操作系统中,信号量是表示①的物理实体,它是一个与②有关的整型变量,其值仅能由③原语来改变。
【答案】①资源,②队列,③P-V【解析】信号量的概念和P-V原语是荷兰科学家E.W.Dijkstra提出来的。
信号量是一个特殊的整型量,它与一个初始状态为空的队列相联系。
信号量代表了资源的实体,操作系统利用它的状态对并发进程共享资源进行管理。
信号量的值只能由P-V原语来改变。
5.每执行一次P原语,信号量的数值S减1。
如果S>=0,该进程①;若S<0,则②该进程,并把它插入该③对应的④队列中。
死锁习题及答案
死鎖習題及答案一、填空題1.進程の“同步”和“互斥”反映了進程間①和②の關系。
【答案】①直接制約、②間接制約【解析】進程の同步是指在異步環境下の並發進程因直接制約而互相發送消息,進行相互合作、相互等待,使得各進程按一定の速度執行の過程;而進程の互斥是由並發進程同時共享公有資源而造成の對並發進程執行速度の間接制約。
2.死鎖產生の原因是①和②。
【答案】①系統資源不足、②進程推進路徑非法【解析】死鎖產生の根本原因是系統の資源不足而引發了並發進程之間の資源競爭。
由於資源總是有限の,我們不可能為所有要求資源の進程無限地提供資源。
而另一個原因是操作系統應用の動態分配系統各種資源の策略不當,造成並發進程聯合推進の路徑進入進程相互封鎖の危險區。
所以,采用適當の資源分配算法,來達到消除死鎖の目の是操作系統主要研究の課題之一。
3.產生死鎖の四個必要條件是①、②、③、④。
【答案】①互斥條件、②非搶占條件、③占有且等待資源條件、④循環等待條件【解析】互斥條件:進程對它所需の資源進行排它性控制,即在一段時間內,某資源為一進程所獨占。
非搶占條件:進程所獲得の資源在未使用完畢之前,不能被其它進程強行奪走,即只能由獲得資源の進程自己釋放。
占有且等待資源條件:進程每次申請它所需の一部分資源,在等待新資源の同時,繼續占有已分配到の資源,循環等待條件:存在一進程循環鏈,鏈中每一個進程已獲得の資源同時被下一個進程所請求。
4.在操作系統中,信號量是表示①の物理實體,它是一個與②有關の整型變量,其值僅能由③原語來改變。
【答案】①資源,②隊列,③P-V【解析】信號量の概念和P-V原語是荷蘭科學家E.W.Dijkstra提出來の。
信號量是一個特殊の整型量,它與一個初始狀態為空の隊列相聯系。
信號量代表了資源の實體,操作系統利用它の狀態對並發進程共享資源進行管理。
信號量の值只能由P-V原語來改變。
5.每執行一次P原語,信號量の數值S減1。
如果S>=0,該進程①;若S<0,則②該進程,並把它插入該③對應の④隊列中。
第三章 处理机调度与死锁习题及答案 新
第三章处理机调度与死锁一.选择题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.下面有关面向连接和无连接的数据传输速度的说法中正确的是()。
A.面向连接的网络数据传输快B.无连接的网络数据传输快C.二者速度一样快D.不可判定2.下列关于UDP协议的说法中正确的是()。
A.可以提供可靠的数据流传输服务B.可以提供面向连接的数据流传输服务C.可以提供无连接的数据报传输服务D.可以提供数据报传输的时延保证3.一个UDP用户数据报首部的十六进制表示为07-33-00-50-00-1C-E3-18。
试求源端口、目的端口、用户数据报的总长度以及数据部分的长度。
4.在停止-等待协议中,当分组出现丢失时,发送端会永远等待下去,解决这种死锁现象的办法是采用()。
A.差错校验B.超时机制C.分组序号D.NAK机制5.在停止-等待协议中,为了解决重复分组的问题,需要采用()。
A.ACK机制B.超时机制C.分组序号D.NAK机制6.一个信道的比特率是4Kbps,传播时延是20毫秒,那么分组的大小在什么范围内时,停止-等待协议才有至少50%的效率。
7.在滑动窗口机制中,发送窗口的大小表示()。
A.发送方可以发送的数据分组的总数B.发送方在本次连接中可以发送的数据分组的总数C.发送方可以发送的未被确认的数据分组的个数D.接收方可以接收的数据分组的个数8.下述关于滑动窗口的叙述中,正确的是()。
A.发送窗口可以对发送方进行流量控制B.当接收到的数据分组的序号落在接收窗口之外时,接收方会将其丢弃C.只有接收窗口向前滑动时,发送窗口才有可能向前滑动D.以上叙述都正确9.采用回退N协议,接收窗口内的序号为4时接收到正确的5号分组应该()。
A.将窗口滑动到5号B.丢弃5号分组C.将5号分组缓存下来D.将5号分组交给上层处理10.在选择重传协议(SR)中,当分组的序号字段为3比特,且接收窗口与发送窗口尺寸相同时,发送窗口的最大尺寸为()。
A.2 B.4 C.6 D.811.在一个1Mbps的卫星信道(端到端时延为270毫秒)上发送1000比特长的分组,确认总是捎带在数据分组中,分组头很短,使用3位的序列号,对于回退N协议和选择重传协议而言,可以取得的最大信道利用率分别是多少?12.TCP首部16比特的接收窗口字段主要用于实现()。
计算机操作系统死锁习题
【例】一台计算机有6台磁带机,由n个进程竞争使 用,每个进程可能需要两台磁带机,那么n是多少 时,系统才没有死锁的危险? 【解答】对于三个进程,每个进程能够有两个驱动 器。对于4个进程,驱动器可以按照(2,2,1, 1)的方法进行分配,使前面两个进程先结束。对 于5个进程,可以按照(2,1,1,1,1)的方法 进行分发,使一个进程先结束。对于六个进程, 每个进程都拥有一个磁带驱动器同时需要另外一 个驱动器,产生了死锁。因此,对于n<6的系统 来说是无锁的。
【例】_____是指多个进程因竞争资源而造成 的一种僵局,若无外力作用,这些进程都 将永远不能再向前推进 【答案】死锁
【例】死锁是指系统的全部进程都处于阻塞 状态 【解答】错 死锁是指系统中涉及死锁的进程全部处于阻 塞状态,而不处于死锁状态的进程则不一 定。
【例】操作系统处理死锁,只要采用预防, 解除,检测,避免等方法中的一种就足够 了 【解答】错误 因为操作系统要兼顾资源的使用效率和安全 性两方面,常见的是将预防,解除,检测, 避免等四种处理方法混合使用。例如,只 有检测死锁而无解除死锁的方法,检测出 死锁又有什么用?
【例】系统死锁可利用( )来描述。 A 进程 B 程序 C 系统流程图 D 资源分配图 【答案】D
【例】按序分配资源是为了( ) A 死锁的检测 B 死锁的防止 C 死锁的避免 D 死锁的解除 【答案】B
【例】死锁的预防是根据()而采取措施实 现的 A 配置足够的系统资源 B 使进程的推进顺序合理 C 破坏死锁的四个必要条件之一 D 防止系统进入不安全状态 【解答】C
【例】当由于为进程分配资源而使系统处于 不安全状态时,系统一定会导致死锁 【解答】错。 当由于进程分配资源而使系统处于不安全状 态使,系统不一定会死锁。因为可能有些 进程的资源没有达到最大需求时,就已经 完成或故障终止
第三章习题
第三章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、假设下述四个作业同时到达,当使用最高优先数优先调度算法时,作业的平均周转时间为小时。
作业所需运行时间优先数1 2 42 5 93 8 14 3 8A、4.5B、10.5C、4.75D、10.257、下述作业调度算法中,调度算法与作业的估计运行时间有关。
A、先来先服务B、短作业优先C、均衡D、时间片轮转8、用户通过终使用计算机系统控制作业执行的方式称为。
A、自动B、联机C、脱机D、假脱机9、作业生存期共经历四个状态,它们是提交、后备、和完成。
A、就绪B、执行C、等待D、开始10、系统在,发生从目态到管态的转换。
A、发出P操作时B、发生V操作时C、执行系统调用时D、执行置程序状态字时11、以下叙述中正确的是A、操作系统的作业管理是一种微观的低级管理。
B、作业的提交方式有两种,但对应的作业控制方式只有一种。
C、一个作业从进入系统到运行结束,一般要经历的状态是:后备状态、就绪状态和完成状态。
D、多道批处理与单道批处理的主要区别在于它必须有作业调度功能和进程调度功能,内存中可以存放多道作业。
12、在分时操作系统中,进程调度经常采用算法。
A、先来先服务B、最高优先权C、时间片轮转D随机13、资源的按序分配策略可以破坏条件。
A、互斥使用资源B、占用且等待资源C、非抢夺资源D、循环等待资源14、在为多道程序所提供的可共享的系统资源不足时,可能出现死锁。
操作系统第3章习题-答案
第3章调度与死锁一、单项选择题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. 某系统中有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是________。
A. 9 =B. 10C. 11D. 1210. 以优先级为基础的进程调度算法可以保证在任何时候正在运行的进程总是诸就绪进程中优先级最高的进程。
上述描述是________。
A. 正确的=B. 错误的11. 当检测出发生死锁时,可以通过撤消一个进程解除死锁。
上述描述是________。
A. 正确的=B. 错误的12. 在下列解决死锁的方法中,属于死锁预防策略的是____。
计算机操作系统(第四版)课后习题答案第三章
第三章处理机调度与死锁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.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?【解】作业调度每次接纳进入内存的作业数,取决于多道程序度。
操作系统-徐甲同 2版 习题答案 第三章进程-死锁
计算机操作系统
第三章 进程管理
3.破坏“循环等待”条件 采用资源有序/顺序分配法: 把系统中所有资源编 号, 进程在申请资源时必须严格按资源编号的递增次 序进行,否则操作系统不予分配。打破环。 例如:1,2,3,…,10
计算机操作系统
第三章 进程管理
R1
A
B
此列子表明; 进程竞争资源有可能死锁。 但不一定就会死锁,这取决于各 进程的推进速度和对资源的请求 顺序。 死锁是一种与时间有关的错误。 进程竞争的资源应是互斥
R2
进程死锁例1的环路表示
3.4
计算机操作系统
第三章 进程管理
A r1
死锁的举例 例2:
进 程 A A r2 A r3 A r4 B r1 进 程 B B r2 B r3 B r4 请求 读卡 机请 求打 印机 释放 打卡 机 释放 读卡 机 读卡 机 请求 打印 机 请求 读卡 机 释放 打印 机 释放 读卡 机 打印 机
4、 Ar1 Br1 Ar2 Br2 Ar3 Ar4 Br3 Br4
3.6
计算机操作系统
第三章 进程管理
二、产生死锁的四个必要条件
1) 互斥条件(资源独占): 一个资源每次只能给一个进程使用 2) 不可剥夺条件(不可强占): 资源申请者不能强行的从资源占有者手中夺取资 源, 资源只能由占有者自愿释放 3) 请求和保持条件: (部分分配,占有申请) 在申请新的资源的同时保持对原有资源的占有。 4) 循环等待条件: 存在一个进程-等待资源环形链 {P1 , P2 , … , Pn}, 其中P1等待P2占有的资源, P2等待P3占有的资源, …, Pn等待P1占有的资源。
计算机操作系统(第四版)课后习题答案第三章
第三章处理机调度与死锁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章处理机调度与死锁课后习题解答
第3章 处理机调度与死锁
12.在解决死锁问题的几个方法中,哪种方法最易实现? 哪种方法资源利用率最高? 【解答】解决死锁问题的方法有:死锁的预防、死锁的避免、死锁
的检测和解除等。
死锁的预防:主要是破坏产生死锁的必要条件。该方法容易实现,但 资源的利用率低。 死锁的避免:比较常用的有银行家算法。在该算法中有一些数据结构 及必要的计算,因此,实现起来不太容易,但资源的利用率最高。 死锁的检测和解除:是基于死锁定理而设计的,定期或不定期运行该 算法对系统的状态进行检测,发现死锁便予以解除。其中,需要比较 一下各种死锁解除方案的代价,找到代价最小的方案。该算法资源利 用率较高,但最难实现。因此,在以上几种方法中,死锁的预防最易 实现;死锁的避免资源利用率最高。
15.说明Linux系统的进程有哪几个状态? 【解答】 Linux系统内核在进程控制块中用state成员描述 进程当前的状态,并明确定义了5种进程状态。它们分别 是: (1)TASK-RUNNING状态,Linux系统中的运行状态实 际包含了上述基本状态中的执行和就绪两种状态。 (2)TASK-INTERRUPTIBLE状态,可中断的等待态。 (3)TASK-UNINTERRUPTIBLE状态,等待态,不可中 断状态。 (4)TASK-ZOMBIE状态,僵死态。 (5)TASK-STOPPED状态,暂停态。
1
第3章 处理机调度与死锁
2.高级调度与低级调度的功能是什么? 【解答】高级调度即作业调度。作业调度又称为高 级调度或长调度,用于选择把外存上处于后备队列 中的哪些作业调入内存,并为它们创建进程、分配 必要的资源。然后,再将新创建的进程排在就绪队 列上,准备执行。低级调度又称为进程调度,它的 功能是按照某种策略和算法,将处理机分配给一个 处于就绪状态的进程。
(完整版)计算机操作系统(第四版)课后习题答案第三章
第三章处理机调度与死锁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.先来先服务算法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.有关产生死锁的叙述中,正确的是。
操作系统_第三章_复习题
操作系统_第三章_复习题(总7页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--第三章死锁复习题一、单项选择题1.避免死锁的一个著名的算法是( B)。
A.先入先出法; B.银行家算法;C.优先级算法; D.资源按序分配法。
2.计算机系统产生死锁的根本原因是( D )。
A.资源有限 B.进程推进顺序不当C.系统中进程太多 D.A和 B3.资源预先分配策略可以实现死锁的( A )。
A.预防 B.避免(在资源的动态分配过程中,采取的一种方法) C.检测 D.恢复4.若系统中有5台绘图仪,有多个进程均需要使用2台,规定每个进程一次仅允许申请一台,则至多允许()个进程参于竞争,而不会发生死锁。
A、5B、2C、3 D、45.产生系统死锁的原因可能是由于( C)。
A、进程释放资源B、一个进程进入死循环C、多个进程竞争资源出现了循环等待D、多个进程竞争共享型设备6. 两个进程争夺同一个资源( B)。
A.一定死锁B.不一定死锁C.不会死锁D.以上说法都不对7. 解决死锁的途径是( D)。
A. 立即关机排除故障B. 立即关机再重新开机C. 不要共享资源,增加独占资源D. 设计预防死锁方法,运行检测并恢复8. 进程P1使用资源情况:申请资源S1,申请资源S2,释放资源S1;进程P2使用资源情况:申请资源S2,申请资源S1,释放资源S2,系统并发执行进程P1,P2,系统将(B)。
A.必定产生死锁B. 可能产生死锁C.会产生死锁D. 无法确定是否会产生死锁9. 两个进程同时运行并希望使用对方所占用的资源,而又都不肯释放所占用资源的情形被称做(A)。
A 死锁B 循环等待C 互斥D 银行家算法10. (A )阐明了"如果出现死锁,忽略它,就当自己完全不知道发生死锁一样"。
A驼鸟算法 B 银行家算法C 循环等待D DRAG11. (不安全状态)意味着资源分配会导致死锁,而(安全状态)意味着可以避免死锁。
操作系统第二版第三章课后习题答案
第三章死锁作业答案1,3,9,11,13,14, 161.什么是死锁?试举出一个生活中发生死锁的例子。
参考答案:所谓死锁,是指在一个进程集合中的每个进程都在等待仅由该集合中的另一个进程才能引发的事件而无限期地僵持下去的局面。
(也可以是:多个进程因竞争资源而造成的一种僵局,若无外力作用这些进程都将永远不能再向前推进。
)举例:1)书中例子“两辆汽车过窄桥发生冲突”2)公共汽车到站,车上的人要下车,车下的人要上车,挤在车门口。
结果是车上的人下不来,车下的人上不去。
3. 发生死锁的四个必要条件是什么?参考答案:发生死锁的四个必要条件是:互斥条件、占有且等待条件、不可抢占条件和循环等待条件。
9. 设想有一条带闸门的运河,其上有两座吊桥,它们在一条公路上,运河和公路的交通都是单方向的。
河上的交通工具是轮船。
当轮船距A桥100m时就鸣笛警告,若桥上无车辆,吊桥就吊起,直至轮船尾部过桥为止。
对吊桥B也做同样处理。
设轮船的长度为200m。
车辆和轮船任意前进时,是否会发生死锁?若会,说明理由。
怎样发现?并请提出一种防止死锁的办法。
参考答案:会产生死锁。
当轮船距A桥100m时鸣笛警告,此时若桥上无车辆,吊桥就吊起,但是B桥上有车辆,而且由于A桥吊起,车辆无法前进,B桥上的车辆无法下桥。
于是,轮船和车辆都不能前进,造成死锁现象。
一种防止死锁的办法是:当轮船距A桥100m时就鸣笛警告,车辆不能再上B桥。
当B桥上无车辆时,就吊起B 桥;然后,当A桥上无车辆,则吊起A桥。
轮船通过A桥和B桥后,两个吊桥放下,车辆可以通行。
(该方法相当于资源有序分配,也可以采用资源预分配策略,即同时吊起A、B两桥的方法,资源利用率相对较低。
)11. 死锁和“饥饿”之间的主要差别是什么?参考答案:①处于死锁状态的进程都占有一定的资源,而处于饥饿状态的进程永远都得不到所申请的资源②死锁是一种僵局,在无外力干预下,处于死锁状态的全部进程都不能前进,即它们都处于阻塞态,可能造成整个系统瘫痪;而出现饥饿时系统照常运行,只是某个或某几个进程永远也不能得到所需的全部服务③造成死锁的根本原因是资源有限且使用不当;而造成饥饿的原因是资源分配策略或调度策略不合适,如果采用先来先服务的资源分配策略就可以避免饥饿。
东软操作系统习题及答案(3)
第三章处理机调度与死锁一、单项选择题1.如果一个进程的周转时间比较大,但带权周转时间比较小,说明该进程()。
A.是一个短进程,且执行过程中等待时间相对较长B.是一个短进程,且执行过程中等待时间相对较短C.是一个长进程,且执行过程中等待时间相对较长D.是一个长进程,且执行过程中等待时间相对较短2.下列调度算法中,对所有就绪进程都比较公平的算法是()。
A.FCFS B.SPFC.RR(时间片轮转法) D.HRRN3.下列调度算法中,需要事先估计进程运行时间的算法是()。
A.FCFS B.HRRNC.RR D.多级反馈队列调度算法4.下列哪种调度决定了系统的多道程序度?()A.高级调度B.中级调度C.低级调度D.进程调度5.以下执行最频繁的调度方式是()。
A.高级调度B.中级调度C.低级调度D.作业调度6.从用户提交作业到作业最终完成的时间间隔称为()。
A.响应时间B.周转时间C.服务时间D.等待时间7.抢占方式的调度是指当前正在运行的进程被操作系统中断,并转移到()状态。
A.阻塞状态B.新建状态C.就绪状态D.挂起状态8.当一个时间片比运行时间最长的进程还要长时,时间片轮转调度算法就退化成了()。
A.HRRN B.FCFSC.SPF D.多级反馈队列调度算法9.下列调度算法中,属于抢占策略的算法是()。
A.FCFS B.RRC.SPF D.HRRN10.若某一时刻系统中的一个进程的响应比最高,则说明该进程()。
A.运行时间最长B.等待时间最长C.周转时间最长D.等待时间与运行时间的比值最大11.下列调度算法中,能让每一个进程在进入就绪队列后很快得到一次运行机会的调度算法是()。
A.FCFS B.SPFC.RR12. 对于一个刚刚到达的进程,其响应比应该为()。
A.0 B.1C.2 D.无穷大13. 在时间片轮转调度算法中,如果时间片一定,且每个进程的服务时间都大于一个时间片,则运行的进程越多,每个进程()。
操作系统-第3章复习题答案
操作系统第三章总复习题一、单选题1、进程调度又称低级调度,其主要功能是( D )。
A.选择一个作业调入内存B.选择一个主存中的进程调出到外存C.选择一个外存中的进程调入到主存D.将一个就绪的进程投入到运行2、若进程P一旦被唤醒就能够投入运行,系统可能为( D )。
A.分时系统,进程P的优先级最高B.抢占调度方式,就绪队列上的所有进程的优先级皆比P的低C.就绪队列为空队列D.抢占调度方式,P的优先级高于当期运行的进程。
3、一个进程P被唤醒后,( D )。
A.P就占有了CPU。
B.P的PCB被移到就绪队列的队首。
C.P的优先级肯定最高D.P的状态变成就绪4、若当期运行进程( C )后,系统将会执行进程调度原语。
A 执行了一个转移指令B 要求增加主存空间,经系统调用银行家算法进行测算认为是安全的。
C 执行了一条I/O指令要求输入数据。
D 执行程序期间发生了I/O完成中断。
5、当系统中( C )时,系统将不会执行进程调度原语。
A.一个新进程被创建B.当前进程执行了P操作。
C.在非抢占调度中,进程A正在运行而进程B恰好被唤醒。
D.分时系统中时间片用完。
6、在分时系统中,若当期运行的进程连续获得了两个时间片,原因可能是( B )。
A 该进程的优先级最高B 就绪队列为空C 该进程最早进入就绪队列D 该进程是一个短进程7、实时系统中采用的调度算法可以有如下几种:1、非抢占优先权调度算法2、立即抢占优先权调度算法3、时间片轮转调度算法4、基于时钟中断抢占的优先权调度算法按实时要求的严格程度由低到高的顺序( B )。
A 1-3-2-4B 3-1-4-2C 3-1-2-4D 1-3-4-28、三种主要类型的OS 中都必须配置的调度( C )。
A 作业调度B 中级调度C 低级调度D I/O调度9、设系统中n 个进程并发,共同竞争资源X,且每个进程都需要m个X资源,为使该系统不会发生死锁,资源X最少要有( C )个。
A m*n+1B n*m+nC n*m+1-nD 无法预计注:可以这样理解N个进程,都需要M个资源,最坏的一种情况是:每个进程都占有M-1个资源,都得不到M个资源,总共资源数(m-1)*n。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章死锁习题一、填空题1.进程的“同步”和“互斥”反映了进程间①和②的关系。
【答案】①直接制约、②间接制约【解析】进程的同步是指在异步环境下的并发进程因直接制约而互相发送消息,进行相互合作、相互等待,使得各进程按一定的速度执行的过程;而进程的互斥是由并发进程同时共享公有资源而造成的对并发进程执行速度的间接制约。
2.死锁产生的原因是①和②。
【答案】①系统资源不足、②进程推进路径非法【解析】死锁产生的根本原因是系统的资源不足而引发了并发进程之间的资源竞争。
由于资源总是有限的,我们不可能为所有要求资源的进程无限地提供资源。
而另一个原因是操作系统应用的动态分配系统各种资源的策略不当,造成并发进程联合推进的路径进入进程相互封锁的危险区。
所以,采用适当的资源分配算法,来达到消除死锁的目的是操作系统主要研究的课题之一。
3.产生死锁的四个必要条件是①、②、③、④。
【答案】①互斥条件、②非抢占条件、③占有且等待资源条件、④循环等待条件【解析】互斥条件:进程对它所需的资源进行排它性控制,即在一段时间内,某资源为一进程所独占。
非抢占条件:进程所获得的资源在未使用完毕之前,不能被其它进程强行夺走,即只能由获得资源的进程自己释放。
占有且等待资源条件:进程每次申请它所需的一部分资源,在等待新资源的同时,继续占有已分配到的资源,循环等待条件:存在一进程循环链,链中每一个进程已获得的资源同时被下一个进程所请求。
4.在操作系统中,信号量是表示①的物理实体,它是一个与②有关的整型变量,其值仅能由③原语来改变。
【答案】①资源,②队列,③P-V【解析】信号量的概念和P-V原语是荷兰科学家E.W.Dijkstra提出来的。
信号量是一个特殊的整型量,它与一个初始状态为空的队列相联系。
信号量代表了资源的实体,操作系统利用它的状态对并发进程共享资源进行管理。
信号量的值只能由P-V原语来改变。
5.每执行一次P原语,信号量的数值S减1。
如果S>=0,该进程①;若S<0,则②该进程,并把它插入该③对应的④队列中。
【答案】①继续执行,②阻塞(等待),③信号量,④阻塞(等待)【解析】从物理概念上讲,S>0时的数值表示某类资源可用的数量。
执行一次P原语,意味着请求分配一个单位的资源,因此描述为S=S-1。
当S<0时,表示已无资源,这时请求资源的进程将被阻塞,把它排在信号量S的等待队列中。
此时,S的绝对值等于信号量队列上的阻塞的进程数目。
6.每执行一次V原语,信号量的数值S加1。
如果①,Q进程继续执行;如果S<=0,则从对应的②队列中移出一个进程R,该进程状态变为③。
【答案】①S>0,②等待,③就绪【解析】执行一次V原语,意味着释放一个单位的资源。
因此,描述为S=S+1。
当S<0时,表示信号量请求队列中仍然有因请求该资源而被阻塞的进程。
因此,应将信号量对应的阻塞队列中的第一个进程唤醒,使之转至就绪队列。
7.利用信号量实现进程的①,应为临界区设置一个信号量mutex。
其初值为②,表示该资源尚未使用,临界区应置于③和④原语之间。
【答案】①互斥,②1,③P(mutex),④V(mutex)【解析】一次仅允许一个进程使用的资源称为临界资源,对临界资源实施操作的那段程序称为临界区。
对于具有临界区问题的并发进程,它们之间必须互斥,以保证不同时进入临界区。
利用信号量和P-V原语能方便地解决临界区问题。
mutex为互斥公用信号量,初值为1,临界区的代码被置于P(mutex)、V(mutex)原语之间时,任何欲进入临界区的进程,必须在公用信号量mutex上执行P原语,在完成对临界资源的访问后再执行V原语。
由于mutex初值为1,当第一个进程执行P原语后减为0,表示临界资源空闲,可分配给该进程使之进入临界区,在第一个进程没有退出临界区之前,若此时第二个进程想进入临界区,也应先执行P原语。
而结果是mutex变为负值,就意味着临界资源已被占用,因此,第二个进程被阻塞。
直到第一个进程执行V原语,释放该临界资源mutex到0后,方可唤醒第二个进程,使之进入临界区,待它完成对临界资源的访问后,又执行V原语,使mutex恢复到初始值。
8.在多道环境下,由于进程的并发执行,一段程序为多个进程①时,要求在执行的过程中,该段程序的指令和数据不能被②,这样的程序段称为③。
【答案】①共享,②修改,③纯过程(或共享程序段)【解析】在多道环境下,常常有许多于程序和应用程序是被多个用户所共用的,为了充分提高内存的利用率,把这些共享的程序和数据在内存只保留一个副本,这就要求这些程序和数据不能被修改。
二、单项选择题1.在非剥夺调度方式下,运行进程执行V原语之后,其状态。
(A)不变(B)要变(C)可能要变(D)可能不变【答案】(A)【解析】进程的调度方式有两种;剥夺和非剥夺方式。
在剥夺方式下,一旦有优先级高于当前执行进程优先级的进程存在时,便立即发生进程调度,转让处理机。
而非剥夺方式是即使在就绪队列中有优先级高于当前执行进程的进程存在,当前进程仍将继续占有处理机,直到由于该进程自己的原因而让出处理机。
2.两个进程争夺同一个资源。
(A)一定死锁(B)不一定死锁(C)不死锁(D)以上说法都不对【答案】(B)【解析】这和它们申请资源的顺序有关。
3.①是一种只能由P操作和V操作进行访问的特殊变量,可以用来实现异步并行进程间的②以排它地访问共享数据,还可以用来实现③,实现进程间在逻辑上的相互制约关系。
(A)调度(B)类程(C)进程(D)互斥(E)信号量(F)控制变量(G)同步(H)共享变量(I)规程(J)分配【答案】①(E)②(D)③(G)4.可以被多个进程在任一时刻共享的代码必须是。
(A)不能自身修改的纯码(B)顺序代码(C)无转移指令的代码(D)汇编语言编制的代码【答案】(A)【解析】规定共享代码必须是不自身修改的纯码,主要是为了保证程序执行的正确性。
5.当对信号量进行V原操作之后,。
(A)当S<0,进程继续执行(B)当S>0,要唤醒一个就绪进程(C)当S<=0,要唤醒一个等待进程(D)当S<=0,要唤醒一个就绪进程【答案】(C)【解析】V操作的物理含义是回收释放的一个资源,即信号量的值加1。
在这个过程中,如果信号量的值大于0,表明系统没有其他进程正在等待使用该资源,该进程继续执行或转进程调度,这取决于进程调度采用的方式。
如果信号量的值小于或等于0,说明有进程曾经因申请该资源且为得到满足而处于该资源对应的等待队列中,现在释放一个资源就应从该资源的等待队列中唤醒一个进程,使之变为就绪状态。
6.在下列叙述中,错误的一条是。
(A)进程被撤消时,只需释放该进程的PCB就可以了,因为PCB是进程存在的唯一标志(B)进程的互斥和同步都能用P/V原语实现(C)用户程序中执行系统调用命令时,处理机的状态字将发生改变(D)设备独立性是指用户在编程时,所使用的设备与实际设备无关【答案】(A)【解析】进程不仅要释放PCB结构,也要释放它所占有的所有资源;而且,当一个祖先进程撤消某个子进程时,还需要审查该子进程是否还有自己的子孙进程,若有的话,还需撤消某个子进程的PCB结构和释放它们所占有的资源。
因此,叙述(A)是错误的。
把并发进程的同步和互斥问题一般化,可以得到一个抽象的一般模型,即生产者/消费者问题。
叙述(B)正确。
处理机的状态将从目态转换到管态。
叙述(C)正确。
用户编程所使用的设备称为逻辑设备,而逻辑设备与物理设备的对应由操作系统的设备管理程序完成。
叙述(D)正确。
7.正在运行的进程在信号量S上作P操作之后,当S<0,进程将进入信号量的。
(A)等待队列(B)提交队列(C)后备队列(D)就绪队列【答案】(A)【解析】执行一次P操作意味着申请一个资源,即信号量S—1。
如果S<0,表明该资源已经没有了,该进程只能等待,所以,此时进程的状态从运行变为等待,并插入到该信号量的等待队列中。
8.如果发现系统有的进程队列就说明系统有可能发生死锁了。
(A)互斥(B)可剥夺(C)循环等待(D)同步【答案】(C)9.某个信号量S初值为3,当前值为-2,则等待在该信号量上的进程数为个。
(A)1(B)2(C)3(D)5【答案】(B)【解析】等待在该信号量上的进程数与信号量的初值无关。
S>0时,S表示可使用的资源数;或表示可使用资源的进程数。
S=0时,表示无资源可供使用;但也没有进程等待该类资源。
S<0时,|S|表示等待使用资源的进程个数;或表示等待进入临界区的进程个数。
10.预先静态分配法是通过破坏条件,来达到预防死锁目的的。
(A)互斥使用资源/循环等待资源(B)非抢占式分配/互斥使用资源(C) 占有且等待资源/循环等待资源(D)循环等待资源/互斥使用资源【答案】(C)【解析】预先静态分配法,这是针对“占有且等待资源”、“循环等待资源”这两个条件提出的的策略。
要求每一个进程在开始执行前就申请它所需要的全部资源,仅当系统能满足进程的资源要求且把资源分配给进程后,该进程才能开始执行。
这个策略毫无疑问能够防止死锁的发生,因为这样做破坏了以上两个条件。
11.设系统中有N(N>2)个进程,则系统中最不可能的是有个进程处于死锁状态。
(A)0 (B)1(C)2 (D)M(2<M<=N)【答案】(B)【解析】所谓死锁是指计算机系统和进程所处的一种状态,在系统中,两个或多个进程无限期地等待永远不会发生的条件,我们称此系统处于死锁状态。
三、多项选择题1.造成死锁的原因是_________。
(A)内存容量太小(B)系统进程数量太多,系统资源分配不当(C)CPU速度太慢(D)进程推进顺序不合适(E)外存容量太小【答案】BD【解析】所谓死锁是指计算机系统和进程所处的一种状态,在系统中,两个或多个进程无限期地等待永远不会发生的条件,我们称此系统处于死锁状态。
产生死锁的原因一是系统进程数量太多,系统资源分配不当;二是进程推进顺序不合适。
死锁的发生与内存容量、外存容量、CPU速度无关。
所以,应该选择(B)、(D)。
2.下列叙述正确的是_________。
(A)对临界资源应采取互斥访问方式来实现共享(B)进程的并发执行会破坏程序的“封闭性”(C)进程的并发执行会破坏程序的“可再现性”(D)进程的并发执行就是多个进程同时占有CPU(E)系统死锁就是程序处于死循环【答案】ABC【解析】进程的顺序性是指进程在处理器上的执行是按照程序规定的顺序,只有在前一个操作结束后才能开始下一个操作。
当一个进程独占处理器顺序执行时,具有两个特性:(1)封闭性——进程执行的结果与其执行速度无关,只取决于进程本身。
(2)可再现性——只要初始条件相同,无论进程在什么时间执行都产生相同的结果。