区别 | 死锁 | 饥饿 | 死循环 |
概念 | 各进程相互等待对方手里的资源。导致各进程都阻塞,无法向前推进的现象。 | 由于长期得不到想要的资源,某进程无法向前推进的现象。 | 某个进程执行过程中,一直跳不出某个循环的现象。 |
不同处 | 1.一定是循环等待对方手里的资源导致的 2.至少有2个或2个以上进程同时发生 3.进程处于阻塞态 4.操作系统分配资源的策略不合理导致 5.是管理者(操作系统)的问题 | 1.只能由一个进程发生饥饿 2.可能在阻塞态,也可能在就绪态 3.操作系统分配资源的策略不合理导致 4.是管理者(操作系统)的问题 | 1.可能只有一个 2.可以是运行态 3.由代码逻辑错误导致的 4.是被管理者的问题 |
共同点 | 都是进程无法向前推进的现象。 |