第3章调度与死锁 练习题
- 格式:doc
- 大小:61.00 KB
- 文档页数:6
第三章进程调度与死锁练习题(一)单项选择题1.为了根据进程的紧迫性做进程调度,应采用(B )。
A.先来先服务调度算法 B. 优先数调度算法 C.时间片轮转调度法 D.分级调度算法2.采用时间片轮转法调度是为了( A)。
A.多个终端都能得到系统的及时响应 B.先来先服务C. 优先数高的进程先使用处理器 D.紧急事件优先处理3.采用优先数调度算法时,对那些具有相同优先数的进程再按( A )的次序分配处理器。
A 先来先服务 B. 时间片轮转 C. 运行时间长短 D.使用外围设备多少4. 当一进程运行时,系统强行将其撤下,让另一个更高优先数的进程占用处理器,这种调度方式是( B )。
A. 非抢占方式 B.抢占方式 C. 中断方式 D.查询方式5.( B)必定会引起进程切换。
A.一个进程被创建后进入就绪态 B.一个进程从运行态变成阻塞态C.一个进程从阻塞态变成就绪态6.( B)只考虑用户估计的计算机时间,可能使计算时间长的作业等待太久。
A.先来先服务算法 B.计算时间短的作业优先算法 C.响应比最高者优先算法 D.优先数算法7.先来先服务算法以( A )去选作业,可能会使计算时间短的作业等待时间过长。
A.进入的先后次序 B.计算时间的长短 C.响应比的高低 D.优先数的大小8.可以证明,采用( C )能使平均等待时间最小。
A.优先数调度算法 B.均衡调度算法C.计算时间短的作业优先算法 D.响应比最高者优先算法9.在进行作业调度时.要想兼顾作业等待时间和计算时间,应选取(D )。
A均衡调度算法 B.优先数调度算法 C.先来先服务算法 D.响应比最高者优先算法10.作业调度算法提到的响应比是指( B )。
A.作业计算时间与等待时间之比 B.作业等待时间与计算时间之比C.系统调度时间与作业等待时间之比 D.作业等待时间与系统调度时间之比11.作业调度选择一个作业装入主存后,该作业能否占用处理器必须由( D )来决定。
第3章处理机调度与死锁-题库及参考答案第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.若每个作业只能建⽴⼀个进程,为了照顾短作业⽤户,应采⽤();为了照顾紧急作业⽤户,应采⽤();为了能实现⼈机交互,应采⽤();⽽能使短作业、长作业和交互作业⽤户都满意,应采⽤()BECDA.FCFS调度算法B.短作业优先调度算法E.剥夺式优先级调度算法7.()优先级是在创建进程时确定的,确定之后在整个运⾏期间不再改变A.先来先服务B.动态C.短作业D.静态8.现在有三个同时到达的作业J1、J2和J3,它们的执⾏时间分别是T1、T2、T3且T1系统按单道⽅式运⾏且采⽤短作业优先调度算法,则平均周转时间是()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。
第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.若每个作业只能建立一个进程,为了照顾短作业用户,应采用();为了照顾紧急作业用户,应采用();为了能实现人机交互,应采用();而能使短作业、长作业和交互作业用户都满意,应采用()BECDA.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。
第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. 在下列解决死锁的方法中,属于死锁预防策略的是____。
第3章处理机调度与死锁3.1 典型例题解析【例1】(1)3个进程共享4个同种类型的资源,每个进程最大需要2个资源,请问系统是否会因为竞争该资源而死锁?(2)n个进程共享m个同类资源,若每个进程都需要用该类资源,而且各进程对该类资源的最大需求量之和小于m+n。
说明该系统不会因竞争该类资源而阻塞。
(3)在(2)中,如果没有“每个进程都需要用该类资源”的限制,情况又会如何?(西北工业大学2000年考题)答:(1)该系统不会因为竞争该类资源而死锁。
因为,必有一个进程可获得2个资源,故能顺利完成,并释放出其所占用的2个资源给其他进程使用,使它们也顺利完成。
(2)用Max(i)表示第i个进程的最大资源需求量,need(i)表示第i个进程还需要的资源量,alloc(i)表示第i个进程已分配的资源量。
由题中所给条件可知:need(i)>0(对所有的i)max(1)+…max(i)+…+max(n) <m+n如果在这个系统中发生了死锁,则意味着已有一个以上的进程因申请不到该类资源而无限阻塞,而m个资源应该全部分配出去,即alloc(1)+…alloc(i)+…+alloc(n)=m因此need(1)+…need(i)+…+need(n)=max(1)+…max(i)+…+max(n)-alloc(1)+…alloc(i)+…+a lloc(n)<m+n-m即need(1)+…need(i)+…+need(n)<n这样,至少必须存在一个进程,其need(i)≤0,这显然与题意不符,所以该系统不可能因竞争该类资源而进入死锁状态。
(3)此时系统可能发生死锁,如n=4,m=3时,若P1的Max为0,而其余三个进程的Max都为2,则仍然满足最大需求量之和(即6)小于m+n(即7)的要求,但当除P1以外的其余三个进程各得到一个资源时,这三个进程将进入死锁状态。
【例2】设系统中有3种类型的资源A、B、C和5个进程P0、P1、P2、P3、P4,A资源的数量为10,B资源的数量为5,C资源的数量为7。
第三章处理机调度与死锁一、单项选择题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、操作系统中的作业管理是一种(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和B D.扩展内存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.为了根据进程的紧迫性做进程调度,应采用(B )。
A.先来先服务调度算法 B. 优先数调度算法 C.时间片轮转调度法 D.分级调度算法2.采用时间片轮转法调度是为了( A)。
A.多个终端都能得到系统的及时响应 B.先来先服务C. 优先数高的进程先使用处理器 D.紧急事件优先处理3.采用优先数调度算法时,对那些具有相同优先数的进程再按( A )的次序分配处理器。
A 先来先服务 B. 时间片轮转 C. 运行时间长短 D.使用外围设备多少4. 当一进程运行时,系统强行将其撤下,让另一个更高优先数的进程占用处理器,这种调度方式是( B )。
A. 非抢占方式 B.抢占方式 C. 中断方式 D.查询方式5.( B)必定会引起进程切换。
A.一个进程被创建后进入就绪态 B.一个进程从运行态变成阻塞态C.一个进程从阻塞态变成就绪态6.( B)只考虑用户估计的计算机时间,可能使计算时间长的作业等待太久。
A.先来先服务算法 B.计算时间短的作业优先算法 C.响应比最高者优先算法 D.优先数算法7.先来先服务算法以( A )去选作业,可能会使计算时间短的作业等待时间过长。
A.进入的先后次序 B.计算时间的长短 C.响应比的高低 D.优先数的大小8.可以证明,采用( C )能使平均等待时间最小。
A.优先数调度算法 B.均衡调度算法C.计算时间短的作业优先算法 D.响应比最高者优先算法9.在进行作业调度时.要想兼顾作业等待时间和计算时间,应选取(D )。
A均衡调度算法 B.优先数调度算法 C.先来先服务算法 D.响应比最高者优先算法10.作业调度算法提到的响应比是指( B )。
A.作业计算时间与等待时间之比 B.作业等待时间与计算时间之比C.系统调度时间与作业等待时间之比 D.作业等待时间与系统调度时间之比11.作业调度选择一个作业装入主存后,该作业能否占用处理器必须由( D )来决定。
A.设备管理 B.作业控制 C.驱动调度 D.进程调度12.系统出现死锁的根本原因是( D )。
A.作业调度不当 B.系统中进程太多C.资源的独占性 D.资源竞争和进程推进顺序都不得当13.死锁的防止是根据( C )采取措施实现的。
A.配置足够的系统资源 B.使进程的推进顺序合理C.破坏产生死锁的四个必要条件之一 D.防止系统进入不安全状态14.采用按序分配资源的策略可以防止死锁.这是利用了使( B)条件不成立。
A.互斥使用资源 B.循环等待资源 C.不可抢夺资源 D.占有并等待资源15.可抢夺的资源分配策略可预防死锁,但它只适用于(D )。
A.打印机 B.磁带机 C.绘图仪 D.主存空间和处理器16.进程调度算法中的( A )属于抢夺式的分配处理器的策略。
A.时间片轮转算法 B.非抢占式优先数算法 C.先来先服务算法 D.分级调度算法17.用银行家算法避免死锁时,检测到(C )时才分配资源。
A.进程首次申请资源时对资源的最大需求量超过系统现存的资源量B.进程己占用的资源数与本次申请资源数之和超过对资源的最大需求量C.进程已占用的资源数与本次申请的资源数之和不超过对资源的最大需求量,且现存资源能满足尚需的最大资源量D.进程已占用的资源数与本次申请的资源数之和不超过对资源的最大需求量,且现存资源能满足本次申请量,但不能满足尚需的最大资源量18.实际的操作系统要兼顾资源的使用效率和安全可靠,对资源的分配策略,往往采用( D )策略。
A.死锁的防止 B.死锁的避免 C.死锁的检测 D.死锁的防止、避免和检测的混合(二)填空题1.常用的进程调度算法有先来先服务__短作业优先______、_高优先权_______、_____时间片轮转___及分级调度等算法。
2.采用优先数调度算法时,一个高优先数进程占用处理器后可有_抢占式_______或__非抢占式______两种处理方式。
3.进程调度算法的选择准则有处理器利用率、__吞吐量______、响应时间和____等待时间____等。
4.先来先服务算法仅从到达的先后次序去选作业,可能会使计算时间__短____的作业等待时间过长______。
5.计算时间短的作业优先算法只考虑用户估计的计算时间,可能使计算时间____长__的作业等待太____久__。
6.采用计算时间短的作业优先算法,肯定能使_平均周转时间_____最小。
7.响应比最高者优先算法综合考虑作业的_等待时间_____和___计算时间___。
8.确定作业的优先数可以由__用户____来提出自己作业的优先数,也可以由_操作系统_____根据作业的缓急程度、作业类型等因素综合考虑。
9.若系统中存在一种进程,它们中的每一个进程都占有了某种资源而又都在等待其中另一个进程所占用的资源。
这种等待永远不能结束,则说明出现了资源管理不当______。
10.系统出现死锁的四个必要条件是:互斥使用资源,_占有并等待资源_____,不可剥夺资源和循环等待资源______。
11.如果资源分配图中无环路,则系统中__无死锁____发生。
12.为了防止死锁的发生,只要采用分配策略破坏四个必要条件_一个条件不成立_____。
13.对资源采用_预分配资源_____的策略可以使循环等待资源的条件不成立。
14.如果操作系统能保证所有的进程在有限的时间内得到需要的全部资源,则称系统处于__安全状态____。
15.只要能保持系统处于安全状态就可避免_死锁_____的发生。
16.可以证明,M个同类资源被n个进程共享时,只要不等式__n(x- 1)+l<=m____成立,则系统一定不会发生死锁,其中x为每个进程申请该类资源的最大量。
17.死锁检测方法要解决两个问题,一是_判断系统_____是否出现了死锁,二是当有死锁发生时怎样去__解除死锁____。
18.如果资源类中含有若干个资源,应根据进程对各类资源的占有量、_尚需量_____和各类资源的___剩余量___来考虑是否有死锁存在。
19.解除死锁的方法有两种,一种是_终止_____一个或几个进程的执行以破坏循环等待,另一种是从其他进程__抢夺资源____20.中断某个进程并解除死锁后,此进程可从头开始执行,有的系统允许进程退到发生死锁之前的那个_校验点_____开始执行。
(三)计算题1.设有PA,PB,PC,PD四个进程同时依次进入就绪队列它们所需的处理器时间和优先数如下表所示:进程处理器时(秒) 优先数PA 20 2PB 15 3PC 10 5PD 12 3若不计调度等所消耗的时间。
请回答:(1)分别写出采用“先来先服务”和“非抢占式的优先数”调度算法选中的进程执行的次序.(2)在上述两种算法下,分别算出每个进程在就绪队列的周转时间。
(1)进程执行次序为:先来先服务法:Pa,Pb,Pc,Pd;非抢占式的优先数法:Pc,Pb,Pd,Pa(2)先来先服务法:每个进程在就绪队列的等待时间分别为PA:0秒;Pb:0+20=20(秒);Pc:20+15=35(秒) Pd:35+10=45(秒);平均等待时间为(0+20+35+45)/4=25(秒);非抢占式的优先数法:每个进程在就绪队列中的等待时间为:Pa:25+12=37(秒); Pb:0+10=l0(秒); PC: 0秒; Pd:10+15=25(秒);平均等待时间为(37+l0+0+25)/4=18(秒)2.若有10个同类资源供三个进程共享,下表列出了这三个进程目前己占资源和最大需求量的情况,现在这三个进程P1,P2,P3又分别申请1个、2个、1个资源,请问:(1)能否先满足进程P2的要求?为什么?(2)如何为这三个进程分配资源比较合适?进程已占资源数最大需求量P1 3 7P2 3 8P3 2 3(1)根据表,P1,P2和P3三个进程尚需资源数分别是4,5和l,系统的资源剩余量为2,若把剩余的资源量全部分配给P2,系统产已无资源可分配,使三个进程都等待资源而无法完成,形成死锁。
所以不能先满足进程P2的要求。
(2)可先为进程P3分配1个资源,当它归还3个资源后,这样共有4个可分配资源,可满足P1申请1个资源的要求,再分配3个资源给进程P1,待P1归还7个资源后,先满足P2申请2个资源的请求,分配给进程P2,再分配3个资源给P2,使它完成。
3.现有五个进程A,B,C,d,E共享Rl,R2,R3,R4这四类资源,进程对资源的需求量和目前分配情况如下表。
若系统还有剩余资源数分别为R1类2个,R2类6个,R3类2个和R4类1个,请按银行家算法回答下列问题:(1)目前系统是否处于安全状态? (2)现在如果进程D提出申请(2,5,0,0)个资源,系统是否能为它分配资源?进程已占资源数最大需求量R1 R2 R3 R4 R1 R2 R3 R4A 3 6 2 0 5 6 2 0B 1 0 2 0 1 0 2 0C 1 0 4 0 5 6 6 0D 0 0 0 1 5 7 0 1E 5 3 4 1 5 3 6 2(1)系统目前尚余有的资源数为(2,6,2,1),五个进程尚需的资源数分别是 A:(2,0,0,0) ; B:(0,0,0,0); C:(4,6,2,0) ; D:(5,7,0,0); E:(0,0,2,1);由于进程B己满足了全部资源需求,它在有限时间内会归还这些资源,因此可分配资源达到(3,6,4,1),这样就可分配给进程A;等A归还资源后,可分配资源达到(6,12,6,1),再分配给进程C;之后可分配资源会达到(7,12,10,1),分配给进程D并等待一段时间后,可分配资源将达到(7,12,10,2),最后,可分配给进程E,满足其全部请求。
所以说目前系统处于安全状态。
(2)若此时给进程D分配(2,5,0,0)个资源,进程D尚需(3,2,0,0),则系统剩余的资源量为(0,1,2,1);若待进程B归还资源后,可分配资源能达到(1,1,4,1),根据各进程尚需资源量,只有先满足E的资源需求,待它归还资源后,可配资源只有(6,4,8,2),这样就可分配给进程A;等A归还资源后,可分配资源达到(9,10,10,2),再分配给进程C;之后可分配资源会达到(10,10,14,2),最后,可分配给进程D,满足其全部请求。
所以说此时给进程D分配(2,5,0,0)个资源,目前系统处于安全状态。
4.假设系统配有相同类型的m个资源,系统中有n个进程,每个进程至少请求一个资源(最多不超过m)。
请证明,当n个进程最多需要的资源数之和小于(m+n)时,该系统不会发生死锁。
证明:设N个进程请求的最大资源量分别为xi,i=1,2,…n。
根据条件∑xi<m+n, 从而∑(xi-1)<m, ∴∑(xi-1)+1<=m.资源申请最坏的情况是每个进程已得到了(xi-1)个资源,现均要中请最后一个资源,由上式可知系统至少还有一个剩余资源可分配给某个进程,待它归还资源后就可供其他进程使用,因此该系统不会发生死锁。