은행원 알고리즘은 끝낼 수 있는 순서가 있는지 검사한다
현재 available로 need를 만족하는 프로세스를 하나씩 끝냈다고 가정하며 work를 늘리고, 모두 finish되면 안전 상태다.
available
work 시작값
즉시 줄 수 있는 자원
need <= work
실행 가능
끝낼 후보 선택
release
work 증가
할당 자원 반환 가정
safe sequence
모두 finish
교착 위험 없음
검사 결과
의미
다음 행동
후보 있음
순서 확장
work에 allocation 더함
후보 없음
unsafe
요청 거절 또는 대기
모두 finish
safe
자원 요청 허용 가능
새 요청
가정 배분 후 검사
항상 재검사