当前位置:首页 > 四级网络工程师 > [26] > 正文内容

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

[26]2年前 (2025-02-02)

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

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

给所有哲学家编顺序号,要求奇数号哲学家先取得其左边的筷子,而偶数号哲学家则反之

采用银行家算法分配筷子

答案

给所有哲学家编顺序号,要求奇数号哲学家先取得其左边的筷子,而偶数号哲学家则反之

解析

在设计系统时确定资源分配算法,限制进程对资源的申请,从而保证不发生死锁,具体的做法是破坏产生死锁的四个必要条件之一。其中破坏“循环等待”条件是当进程申请资源时,必须严格按照资源编号的顺序进行,即系统按某种顺序给每个资源编号,进程申请资源时必须按编号顺序进行申请,这样就不会产生循环等待。P、V 操作虽然可以保证互斥使用资源,但有可能产生死锁。银行家算法是死锁避免的方法。


转载请注明出处。

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

相关文章

[26][1][单选]在操作系统的结构设计中,采用整体结构的操作系统具有最大优点是

结构紧密,系统效率高各模块独立性好可以随意更改或替换一个模块适应性较好答案结构紧密,系统效率高解析整...

[26][2][单选]处理器处于不同状态时可执行的指令类型也不同,下列叙述中,哪一项是正确的?

处理器处于管态时只能执行特权指令处理器处于目态时可以执行全部指令处理器处于管态时可以执行全部指令处理...

[26][3][单选]中断是打断处理器的当前工作并要求其去处理某一事件的一种常用手段,中断发生时,那些正在执行的程序的暂停点称为

中断响应中断点中断请求中断程序答案中断点解析处理器暂停当前程序转而处理中断的过程称为中断响应;发生中...

[26][4][单选]系统调用是用户在程序运行时调用的操作系统所提供的一些子功能,这些系统调用可以看作是

操作系统提供给用户程序的服务操作系统自身必须用到的功能用户程序自身必须用到的功能用户程序为操作系统提...

[26][5][单选]下列哪一种调度算法是综合了多种调度算法的?

最高优先级算法轮转法(RR多级反馈队列算法先来先服务算法答案多级反馈队列算法解析在实际的计算机系统中...

[26][6][单选]假设有 2 个程序 A 和 B 同时到达,且都要执行。

A 程序的执行顺序为:在 CPU 上执行 20 秒、在设备 DEV1 上执行 10 秒、又在 CPU...