死锁预防:
死锁的四大必要条件:
1、互斥访问(大多数无法实现,少数共享资源可添加锁进行预防)
2、持有并等待(拥有资源时不能再去申请其他资源,或者申请其他资源需要释放当前资源)
3、非抢占式(改为抢占式持有的资源)
4、循环等待(资源可以申请序号,进行升序申请资源解决)
死锁避免:
如果系统可以找到一个顺序可以让当前进程可以按照一定顺序安全执行就是一个安全状态。
这个顺序就是一个安全序列。
相关名词:
资源分配图(对应资源为一个实例)
银行家算法(检测系统分配资源执行进程是不是安全的)(对应资源为多个实例)
死锁检测算法:
资源导向图(资源对应一个实例)
预银行家算法(对应多个实例)