当前位置:首页 > 4444临时 > 正文内容

[25][29][单选]下列图示描述的是经典的哲学家进餐问题。下列各方法中,哪一种可以预防死锁的发生?

4444临时5个月前 (02-02)

仅当一个哲学家左右两边的叉子都可用时,才允许他取得叉子

为每只叉子设置一个信号量。哲学家通过执行 P、V 操作对叉子的互斥使用

定时检查,当发现死锁时,额外提供一支新叉子

采用银行家算法分配叉子

答案

仅当一个哲学家左右两边的叉子都可用时,才允许他取得叉子

解析

仅当某哲学家左右两边的叉子都可用时,才允许他取叉子,那么必然有一个哲学家能拿到两把叉子用餐。当他用餐完毕并释放出两把叉子,其他等待叉子的哲学家又能获得叉子用餐,以此类推,最终所有哲学家都有获得两把叉子的机会进而用餐。(P,V操作虽然可以保证进程间使用,但有可能产生死锁,定时检查无法及时预防死锁的发生,银行家算法是属于避免死锁。故选 A 选项。


转载请注明出处。

本文链接:http://pythonopen.com/?id=7175

相关文章

[12][20][单选]下列关于文件系统中文件的描述中,哪一个是正确的

构成文件内容的基本单位为信息项文件的内容没有顺序关系文件内容都是由操作系统程序并使用的用户需要关注文...

[12][26][单选]利用缓冲技术进行设备管理的主要目的是

加速数据传输预防死锁发生匹配高速和低速设备连接不同种类的设备答案匹配高速和低速设备解析缓冲技术是为了...