《操作系统试题中学教育中考_中学教育-试题.pdf》由会员分享,可在线阅读,更多相关《操作系统试题中学教育中考_中学教育-试题.pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 For personal use only in study and research;not for commercial use 一、填空题 1死锁是指系统中多个 进程 无休止地等待永远不会发生的事件出现。2产生死锁的 4 个必要条件是互斥、非剥夺、部分分配和 循环等待 3在银行家算法中,如果一个进程对资源提出的请求将会导致系统从 安全 态进入到 不安全 的状态时,就暂时拒绝这一请求。二、选择题 。的状 该是 1若两个并发进程相关临界区的互斥信号量 B。MUTEX 现在取值为 0,则正确的描述应 A 没有进程进入临界区 B 有一个进程进入临界区 C有一个进程进入临界区,另一个在等待进入临
2、界区 D不定 2在系统中采用按序分配资源的策略,将破坏产生死锁的 D 条件。A 互斥 B占有并等待 C 不可抢夺 D 循环等待 3某系统中有 3 个并发进程,都需要 4 个同类资源。试问该系统不会产生死锁的最少 资源总数应该是。A 9 B 10 C 11 D 12 4银行家算法是一种 A 算法。A 死锁避免 B死锁防止 C死锁检测 D 死锁解除 5信箱通信是进程间的一种 A 直接 B间接 通信方式。C低级 D信号量 三、简答题 1系统有输入机和打印机各一台,均采用 P-V 操作来实现分配和释放。现在有两个进 程都要使用它们。这会发生死锁吗?试说明理由。解答:答:采用信号量上的 P、V 操作,只
3、能正确地完成对设备的申请与释放,但不能控制进 程对设备的申请、释放顺序。因此,当进程申请和释放设备的顺序不当时,仍会发生死锁。例如,进程 A 使用输入机和打印机的顺序是:请求打印机(Ar1)请求输入机(Ar2)释放打印机(Ar3)释放输入机(Ar4)进程 B 使用输入机和打印机的顺序是:请求输入机(Br1)请求打印机(Br2)释放输入机(Br3)释放打印机(Br4)其中圆括号里标注的字母,表示某进程对设备的某种使用。例如,Ar1 表示进程 A 请求 打印机。由于 A 和 B 都是进程,它们的执行可以交叉进行。执行顺序:Ar1 Ar2 Ar3 Ar4 Br1 Br2 Br3 Br4 或 Ar1
4、Ar2 Br1 Ar3 Ar4 Br2 Br3 Br4 都是合理的交叉。但是,以 Ar1 Br1 开始的执行就无法再往下进行了。因为进程 A 执 行了 Ar1,表明它占用了打印机。接着进程 B 执行了 Br1,表明它占用了输入机。这样一来,不管后面是执行 Ar2(进程 A 申请输入机)还是执行 Br2(进程 B 申请打印机),都不可能 得到满足,两个进程先后被阻塞:进程 A 占据着打印机而等待输入机,进程 B 占据着输入 机而等待打印机。这就产生了死锁。2现有 4 个进程 A、B、C、D,共享 10 个单位的某种资源。基本数据如图 1 所示。试 问如果进程 D 再多请求一个资源单位,所导致的是
5、安全状态还是不安全状态?如果是进程 C 提出同样的请求,情况又会是怎样呢?图 1 第 7 题的基本数据 答:若进程 D 多请求一个资源,资源的使用情况如图 6-18(a)所示。这时,系统剩余 1 个资源,4 个进程各自还需要的资源数是 5、4、2、2,资源剩余数无法保证任何一个进程 运行结束。所以 D 多请求一个资源单位,会导致不安全状态。若是进程 C 提出同样的请求,那么系统资源的使用情况如图 6-18(b)所示。这时,整个系统虽然也只剩余 1 个资源,但 却能够保证 4 个进程都完成。所以,C 再多请求一个资源单位,系统将处于安全状态。图 6-17 第 7 题的基本数据图 6-18 不安全
6、与安全状态示意图 2假定图 2 里的进程 A 申请最后一台磁带机,会引起死锁吗?图 2 多种资源的银行家算法 答:进程 A 申请了最后一台磁带机后,系统资源的使用情况由图 6-19 变为图 6-20。按 照多种资源的银行家算法,这时系统资源的剩余数可以满足进程 D 的要求,于是系统资源 剩余数矩阵 A 变为 A 1 1 2 1 ;这样的剩余数,可以满足进程 A 的要求,于是系统资源剩余 数矩阵 A 变为 A 5 1 3 2 ;这样的剩余数,可以满足进程 B、C、E 三个进程中任何一个的 需要,例如给 E。在 E 完成后,系统资源剩余数矩阵 A 仍为 A 5 1 3 2;再给 C,C 完成后系统
7、资源剩余数矩阵 A 变为 A 6 2 4 2 ;再给 B,B 完成后系统资源剩余数矩阵 A 变为 A 6 3 4 2,系统收回了所有资源。由此可知,进程 A 申请最后一台磁带机,不会引起死锁。3一个计算机有 6 台磁带机,有 n 个进程竞争使用,每个进程最多需要两台。那么 n 为多少时,系统才不存在死锁的危险?答:由于每个进程最多需要两台磁带机,考虑极端情况:每个进程已经都申请了一台。那么只要还有一台空闲,就可以保证所有进程都可以完成。也就是说当有条件:n+1=6(即 n=5)时,系统就不存在死锁的危险。图 6-20 进程 A 申请了最后一台磁带机后 4考虑教材中的图 3(d)。如果进程 C
8、需要的是资源 S,而不是资源 R,这会引起死锁吗?如果是既要求资源 R 又要求资源 S,情况会怎样?1.A 申请 R,2.C 申请 T,3.A 申请 S,4.C 申请 R,5.A 释放 R,6.A 释放 S A B C A B C A B C R S T R S T R S T (a)(b)(c)A B C A B C A B C R S T R S T R S T (d)(e)(f)图 3 第 2 个序列的资源分配图 答:这时的资源使用序列为:(1)A 申请 R,C 申请 T,A 申请 S,C 申请 S,A 释放 R,源提出的请求将会导致系统从态进入到不安全二选择题进程无休止地等待永远不会发
9、生的事件出现循环等待安全的状态时就暂时拒绝这一请求的状若两个并发进程相关临界区的互斥信号量现在取值为则正确的描述应该是没有进程进的策略将破坏产生死锁的互斥占有并等待不可抢夺某系统中有个并发进程都需要个同类资源试问该系统不会产生死锁的少资源总数应该是条件循环等待银行家算法是一种死锁避免信箱通信是进程间的一种算法死锁防止死锁检测死锁个进程都要使用它们这会发生死锁吗试说明理由解答答采用信号量上的操作只能正确地完成对设备的申请与释放但不能控制进程对设备的申请释放顺序因此当进程申请和释放设备的顺序不当时仍会发生死锁例如进程使用输入机和打 A 释放 S;(2)A 申请 R,C 申请 T,A 申请 S,C
10、申请 S,C 申请 R,A 释放 R,A 释放 S。分别画出它们的资源分配图,可知,它们都不会引起死锁。5.考虑有 3 个进程共享 9 个资源,它们的占有量和最大需求量如下:占有量 最大需求量 P1 2 6 P2 3 6 P3 1 5 如 3 个进程均再申请 2 个资源,按照银行家算法,应该分配给谁?请写出具体理由的描述。解答:(1)若分配给 P1 占有量 最大需求量 P1 4 2 P2 3 6 P3 1 5 资源剩余 1,接下来任何一个进程申请资源,即便批准也无法让进程完成,因此不能分 配 (2)分配给 P2 占有量 最大需求量 P1 2 6 P2 5 1 P3 1 5 资源剩余 1 个,接
11、下来 P2 再申请 1 个,满足可让 P2 进程顺利完成,占有量 最大需求量 P1 2 6 P2 6 0 P3 1 5 P2 完成释放 6 个,P1 或 P3 申请均可执行完成,即此方案可行 (3)分配给 P3 占有量 最大需求量 P1 2 6 P2 3 6 P3 3 2 资源剩余 1 个,接下来无论哪个进程申请,即使满足也无法令进程执行,各个进程都不 能执行。6某系统有 A,B,C,D 这 4 类资源供 5 个进程共享,进程对资源的需求和分配情况 如下表所示。现在系统还剩资源 A 类 1 个,B 类 5 个,C 类 2 个和 D 类 0 个,请按银行家 算法回答下面问题:进程 已占资源数 最
12、大需求数 A B C D A B C D P1 0 0 1 2 0 0 1 2 0 0 0 0 P2 1 0 0 0 1 7 5 0 0 7 5 0 P3 1 3 5 4 2 3 5 6 1 0 0 2 P4 0 6 3 2 0 6 5 2 0 0 2 0 P5 0 0 1 4 0 6 5 6 0 6 4 2 源提出的请求将会导致系统从态进入到不安全二选择题进程无休止地等待永远不会发生的事件出现循环等待安全的状态时就暂时拒绝这一请求的状若两个并发进程相关临界区的互斥信号量现在取值为则正确的描述应该是没有进程进的策略将破坏产生死锁的互斥占有并等待不可抢夺某系统中有个并发进程都需要个同类资源试问该
13、系统不会产生死锁的少资源总数应该是条件循环等待银行家算法是一种死锁避免信箱通信是进程间的一种算法死锁防止死锁检测死锁个进程都要使用它们这会发生死锁吗试说明理由解答答采用信号量上的操作只能正确地完成对设备的申请与释放但不能控制进程对设备的申请释放顺序因此当进程申请和释放设备的顺序不当时仍会发生死锁例如进程使用输入机和打 a.现在系统是否处于安全状态?b.如果现在进程 P2 提出需要(0,4,2,0)个资源的要求,系统能否满足它的请求?资源剩余数为(1,5,2,0)P1 释放(1,5,3,2)P1-P3-P4-P5-P2 处于安全状态;可以满足 7在飞机订票系统中,假定公共数据区的单元 i 次航班
14、现有票数。在第 j 个售票处,利用变量 Ai(i=1,2,3)里存放着某月某日第 Rj 暂存 Ai 里的内容。现在为第 j 个售票处编 写代码如图 4 所示。试问它的安排对吗?如果正确,试说明理由;如果不对,指出错误,并做出修改。图 4 正确的第 j 售票处的售票程序 源提出的请求将会导致系统从态进入到不安全二选择题进程无休止地等待永远不会发生的事件出现循环等待安全的状态时就暂时拒绝这一请求的状若两个并发进程相关临界区的互斥信号量现在取值为则正确的描述应该是没有进程进的策略将破坏产生死锁的互斥占有并等待不可抢夺某系统中有个并发进程都需要个同类资源试问该系统不会产生死锁的少资源总数应该是条件循环
15、等待银行家算法是一种死锁避免信箱通信是进程间的一种算法死锁防止死锁检测死锁个进程都要使用它们这会发生死锁吗试说明理由解答答采用信号量上的操作只能正确地完成对设备的申请与释放但不能控制进程对设备的申请释放顺序因此当进程申请和释放设备的顺序不当时仍会发生死锁例如进程使用输入机和打 仅供个人用于学习、研究;不得用于商业用途。For personal use only in study and research;not for commercial use.Nur f r den pers?nlichen f r Studien,Forschung,zu kommerziellen Zwecken v
16、erwendet werden.Pour l tude et la recherche uniquement des fins personnelles;pas des mercial ,.以下无正文 源提出的请求将会导致系统从态进入到不安全二选择题进程无休止地等待永远不会发生的事件出现循环等待安全的状态时就暂时拒绝这一请求的状若两个并发进程相关临界区的互斥信号量现在取值为则正确的描述应该是没有进程进的策略将破坏产生死锁的互斥占有并等待不可抢夺某系统中有个并发进程都需要个同类资源试问该系统不会产生死锁的少资源总数应该是条件循环等待银行家算法是一种死锁避免信箱通信是进程间的一种算法死锁防止死锁检测死锁个进程都要使用它们这会发生死锁吗试说明理由解答答采用信号量上的操作只能正确地完成对设备的申请与释放但不能控制进程对设备的申请释放顺序因此当进程申请和释放设备的顺序不当时仍会发生死锁例如进程使用输入机和打