First-Come,First-Served(FCFS)调度是否可以避免死锁?

时间:2018-05-02 02:56:35

标签: operating-system deadlock

通过使用FCFS调度,是否可以确保“系统”不会处于死锁状态?

提前致谢!

2 个答案:

答案 0 :(得分:2)

死锁的四个条件是:

  1. 相互排斥:无论调度算法如何,一个进程都可以拥有资源而无需共享。
  2. 保持并等待:在这种情况下,进程可以在保留一个资源的同时等待其他资源。这可以通过任何调度算法实现。
  3. 没有先发制人:FCFS不是先发制人。也就是说,执行代码关键部分的进程不能被强制停止。
  4. 循环等待:进程正在等待另一个进程以循环方式释放资源。这再次与调度算法无关
  5. 因此,FCFS不保证系统不会陷入死锁。如果满足这四个条件,则会发生死锁。

答案 1 :(得分:1)

死锁是由资源锁定引起的,而不是由调度顺序引起的。 FCFS不保证您的线程总是按顺序获取资源,因此您的问题的答案是否定的。