반응형
  • 교착 상태 회피(Deadlock avoidance)

자원 할당이 교착 상태를 발생시키는 자원에 대한 요청을 인정하지 않는 방법

-교착 상태 회피의 개념

  • 목적 : 덜 엄격한 조건 요구하여 자원을 좀 더 효율적으로 사용하는 것.
  • 교착 상태의 모든 발생 가능성을 미리 제거하는 것이 아닌 교착 상태 발생할 가능성을 인정하고(세 가지 필요조건 허용), 교착 상태가 발생하려고 할 때 적절히 회피하는 것.
  • 예방보다는 회피가 더 병행성을 허용한다고 볼 수 있다.
  • 교착 상태의 회피 방법

프로세스의 시작 중단 : 프로세스의 요구가 교착 상태 발생시킬 수 있다면 프로세스 시작 중단

자원 할당 거부 : 프로세스가 요청한 자원을 할당했을 때 교착 상태가 발생할 수 있다면 요청한 자원을 할당하지 않음.

-교착 상태 회피와 관련된 시스템의 상태

-안정 상태와 불안정 상태의 자원 예

불안정상태는 어떤 현재사용량에서 여분자원수를 더해도 최대 사용량이 더 높음.

-자원 할당 거부(은행가 알고리즘)

-은행가 알고리즘 구현을 위한 자료구조

Need[i, j] = Max[i, j] - Allocation[i, j] 식 성립

-프로세스 P(i)가 자원 요청 시 일어나는 동작

-안전 알고리즘의 시스템 상태 검사

시간 t(0)일때 시스템의 상태

-은행가 알고리즘의 단점

  • 교착 상태 탐지

항상 가능하면 자원 요청을 인정한다. 주기적으로 교착 상태 발생을 탐지하고 발생한 경우 회복하도록 한다.

 

-교착 상태 회복에 필요한 알고리즘

시스템 상태 검사하는 교착 상태 탐지 알고리즘

교착 상태에서 회복시키는 알고리즘

-교착 상태 회복의 특징

-교착 상태 탐지 알고리즘

-교착 상태 탐지 알고리즘 순서

이런 과정으로 교착상태를 찾아냄

Finish[i] 가 True면 안정상태이고 False면 교착상태로 판별한다.

-시간 t(0)일 때 시스템의 상태

-탐지 알고리즘 호출

-교착상태 회복 방법

회복법 1.자원 선점  2.프로세스 중단

 

-기아상태

-식사하는 철학자 문제에서 철학자 i 구조

-식사하는 철학자 문제의 해결 방안

 

 

출처 : 저서명: 운영체제 개정 3판, 저자: 구현회, 출판사: 한빛아카데미, 발행년: 2017

+ Recent posts