操作系统的死锁 主要是介绍了 进程直接发生的特殊情况,内存中每个进程互相等待对方手里的资源,导致各个进程都阻塞,无法向前推进,导致死锁。
主要的重点冷月做出了标识,知识点如下图(pdf版或xmind源文件请关注公众号:学长冷月,回复操作系统)。
冷月点睛
死锁
定义
内存中每个进程互相等待对方手里的资源,导致各个进程都阻塞,无法向前推进
产生条件
系统资源的不恰当分配
进程推进顺序非法
产生死锁的四个必要条件
互斥条件
进程互斥访问临界资源
不可剥夺条件
已经分配给进程的资源不可被其他进程剥夺
请求与保持条件
已经请求到了资源且还在请求其他进程手里的资源
环形等待条件
形成了一个环形资源请求链
死锁的处理
事先预防,不允许死锁发生
死锁预防,破坏互斥条件,破坏不可剥夺条件,破坏请求与保持条件,破坏环形等待条件
死锁避免,银行家算法
事后处理
允许死锁发生
死锁的检测与解除
资源分配图
死锁检查算法,依次消除不会阻塞进程的边,直到无边可消
死锁定理,资源分配图无法完全简化则发生死锁