死锁问题
作者:互联网
定义:多个进程由于竞争资源而造成的阻塞现象
相似概念:饥饿->等待时间过长以至于进程推进和响应带来明细影响(执行一点)
处理策略:
1.破坏互斥条件:将只能互斥的资源改成同时共享访问;独占锁改成共享锁;不是所有资源都能改成可共享的
2.破坏不剥夺条件:请求新资源时必须释放已有资源;由OS协助强制剥夺某进程持有的资源;实现此策略复杂且代价高,而且这个策略操作过多导致原进程任务无法推进
3.破坏请求并保持条件:进程开始运行一次申请所需资源(导致资源浪费和进程饥饿)--->阶段性请求和释放资源
4.破坏循环等待条件:对所有资源进行排序,按序号请求资源(请求时先低后高,释放时先高后低);对资源编号应相对稳定,限制了新设备增加;进程使用资源的顺序与编号顺序不同;限制用户编程
死锁的检测和解除
合适的算法找到安全序列,安全序列必无死锁
资源分配图完全简化就没有死锁
标签:请求,问题,互斥,死锁,进程,改成,资源 来源: https://www.cnblogs.com/ganhuasen/p/16215626.html