CS/OS
[OS] Deadlock 탐지를 위한 Coffman Algorithm 사용법
Yeji Heo
2023. 2. 26. 15:58
1. 요청한 자원 매트릭스 & 할당되어있는 매트릭스 & 사용할 수 있는 자원 벡터를 작성한다.
2. 할당되어 있는 매트릭스(Allocation)에서 아무것도 Hold하지 않고 있는 프로세스는 Marked 한다. ex) Marked=(P4)
(Marked는 Deadlock에 걸리지 않는 Process List)
3. available자원 or 사용 가능하게 될 자원은 W에 기록한다. ex) W=(00001)
4. W를 이용하여 끝낼 수 있는 Process가 있다면 그 Process는 Marked에 추가하고,
그 Process의 allocation+requese(쓰던것과 요청한것)을 다 썼다고 가정, W에 추가한다.
5. 이를 반복했을 때, Marked되지 않은 프로세스는 Deadlock이라고 판단할 수 있다.