← 질문 목록
#177깊이 0

데드락을 해결하기 위한 회피 전략은 무엇인가?

운영체제기초동시성

은행원 알고리즘을 사용하여 자원 할당 시 안전 상태를 유지하는 것이다. 자원을 할당한 후에도 모든 프로세스가 완료될 수 있는 경로가 있는지 확인한다.

  1. 자원 요청
  2. 그다음은 안전 상태 확인입니다. 할당 가능한 자원이 있는지 검사

    안전 상태 확인
  3. 그다음은 자원 할당입니다. 모든 프로세스가 완료될 수 있는 경로가 있다면 할당

    자원 할당
  4. 그다음은 자원 반납입니다. 프로세스 완료 후 자원을 시스템에 반납

    자원 반납

회피는 네 조건을 그대로 둔 채 요청마다 따진다. 지금 내주고도 모두가 끝날 수 있는 순서가 남는지 보고 남을 때만 준다. 남지 않으면 줄 수 있는 자원이어도 기다리게 한다.

반면 예방은 네 조건 중 하나를 아예 못 생기게 막는다. 회피는 조건을 그대로 두고 그때그때 판단한다.

은행원 알고리즘은 프로세스마다 최대 얼마까지 쓸지를 미리 알아야 한다. 그 값을 내놓을 수 없어 쓰이는 곳이 좁다.

추천 꼬리질문

0/300

적은 내용은 AI 학습에 쓰일 수 있습니다. 이름이나 연락처는 넣지 말아 주세요.

관련 질문

데드락을 해결하기 위한 회피 전략은 무엇인가?