- Available: 长度为m的向量
每种类型可用资源的数量 - Allocation : 一个n X m 的矩阵
当前分配给各个进程每种类型资源的数量
进程Pi 拥有资源Ri 的Allocation[i,j] 个实例
死锁检测算法:- Work 和 Finish 分别是长度为m 和 n 的向量初始化
(a) Work =Available // work 为当前空闲资源量
(b) Allocation[i] > 0时, Finish[i]=false;
否则,Finish[i]= true; - 寻找线程 Ti 满足:
(a) Finish[i] = false;
(b) Requesti <= Work
没找到这样的i ,转到4 - Work =Work +Allocation[i]
Finish[i] = true;
转到 2 - 如某个 Finish[i] == false, 系统处于死锁状态
死锁恢复:进程终止
- Work 和 Finish 分别是长度为m 和 n 的向量初始化
死锁检测算法
最新推荐文章于 2024-07-18 18:15:01 发布