作业五 死锁 笔记
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作业五-死锁
选择
1.通常不采用( )方法来解除死锁
从非死锁进程处抢夺资源、终止死锁所有进程
解除死锁的方法有两个,①剥夺资源:从其它进程剥夺足够数量的资源给死锁进程,但一般是从其它死锁进程处抢夺资源,而不是从非死锁进程处抢夺资源,这样有可能会造成新的死锁。②撤消进程:一种终止全部死锁进程,另一种按某种规则逐个终止死锁进程。
2.计算机系统产生死锁的根本原因是( 资源有限和进程推进顺序不当 )
死锁是指两个以上进程相互都要求对方已经占有的资源而相互等待,导致无法继续运行下去的现象。产生死锁的原因是竞争资源及进程推进顺序非法。当系统中有多个进程所共享的资源,不足以同时满足他们的要求时,引起它们对资源的竞争就会导致死锁。进程在运行过程中,请求和释放资源的顺序不当,即进程推进顺序非法导致死锁。
3.若系统中有五台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则至多允许( )个进程参于竞争,而不会发生死锁.
虽然进程在运行过程中,可能发生死锁,但死锁的发生也必须具备一定的条件,死锁的发生必须具备以下四个必要条件。
1 )互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。
2 )请求和保持条件:指进程已经保持至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放。
3 )不剥夺条件:指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。
4 )环路等待条件:指在发生死锁时,必然存在一个进程——资源的环形链,即进程集合{P0,P1,P2,···,Pn}中的P0正在等待一个P1占用的资源;P1正在等待P2占用的资源,……,Pn正在等待已被P0占用的资源。
因此为了避免发生死锁,则不能生成此资源的环形链,则4个进程是极限了。
4.产生系统死锁的原因可能是由于(多个进程竞争,资源出现了循环等待 ).
5.产生死锁的主要原因是进程运行推进的顺序不合适以及(资源分配不当和系统资源不足)
6.死锁预防是保证系统不进入死锁状态的静态策略,其解决方法是破坏产生死锁的四个必要条件之一。下列方法中破坏了“循环等待”条件的是( 资源有序分配策略 )
[解析] 循环等待是死锁的一个条件,一个确保此条件不成立的方法是对所有的资源类型进行完全排序,且要求每个进程按递增顺序来申请资源。
7.避免死锁的一个著名的算法是( 银行家算法 )
判断
1.由于资源数少于进程对资源的需求数,因而产生资源的竞争,所以这种资源的竞争必然会引起死锁。
错误,资源竞争是引起死锁的根本原因,但是并非必然引起死锁,而是在操作不当的情况可能引起死锁。
2.若系统中并发运行的进程和资源之间满足互斥使用、保持和等待、非剥夺性和循环等待,则可判定系统中发生了死锁。
错误,注意进程和资源之间满足互斥使用、占有等待、非剥夺性和循环等待这4个条件,它们是死锁发生的必要条件,而不是充分条件,因此该说法是错误的
3.环路既是死锁的必要条件,又是死锁的充分条件。
错误,因为,环路条件等四个条件只是死锁的必要条件,不是死锁的充分条件。
4.死锁是指因相互竞争资源使得系统中有多个阻塞进程的情况。
(错误)死锁是指因相互竞争资源并且各进程推进不当使得系统中有多个阻塞进程相互等待的情况
选出不正确的两条叙述(BE)。
A、死锁是指因相互竞争资源使得系统中有多个阻塞进程的情况;
B、若系统中并发运行的进程和资源之间满足互斥条件、占有且申请、不可抢占和环路条件,
则可判定系统中发生了死锁;
C、在对付死锁的策略中,解除死锁通常都是和检测死锁配套使用;
D、产生死锁的原因可归结为竞争资源和进程推进顺序不当;
E、在死锁的解决方法中,由于避免死锁采用静态分配资源策略,所以对资源的利用率不高
5.有m个进程的操作系统出现死锁时, 死锁进程的个数为1 6.产生死锁的根本原因是供使用的资源数少于需求资源的进程数。(正确) 7.死锁是指两个或多个进程都处于互等状态而无法继续工作.(正确) 8.系统处于不安全状态不一定是死锁状态。(正确) 9.系统发生死锁时,其资源分配图中必然存在环路。因此,如果资源分配图中存在环路,则系统一定出现死锁。 (错误),存在环路可能发生死锁。系统发生死锁时,其资源分配图中必然存在环路,然而,资源分配图中存在环路,系统中不一定出现死锁。 10.产生死锁的原因可归结为竞争资源和进程推进顺序不当.(正确) 简答题