아직 request 수락 X. need 바탕으로 request 수락된 상태가 safe인지 검사하여 맞을 때만 수락.
특정 시퀀스로 프로세스를 종료시키면서 모든 프로세스에게 최대로 필요한 자원(Max[i])를 할당해줄 수 있는 상태
반드시 모든 프로세스가 claim한 자원을 max로 사용하지 않고 종료하여 release할 수도 있으므로 unsafe state에서도 deadlock이 발생하지 않을 수 있다.
Available이 Need보다 작은 종료 안된 프로세스 존재 검사
존재하면 Allocation을 Available에 추가하고 반복
Request 발생 시, Available 줄이고 Allocation 늘려서(Need 감소) 알고리즘 수행하고 safe하면 grant a request. 아니라면 process wait.
이미 request 수락 O. request 수락된 현재 상태가 deadlock인지 검사하여 맞으면 recovery