본문 바로가기

방송통신대 컴퓨터과학과

운영체제 7강 (교착상태)

728x90
학습개요
  1. 병행 프로세스의 교착상태를 처리하는 기법 중 교착상태 예방은 지난 강의에서 살펴보았습니다. 하지만 교착상태의 필요조건은 제거하지 못하는 경우도 있고 제거할 수는 있지만 자원이용률이 낮아지는 경우도 있습니다. 특히 환형대기 조건을 제거하는 방법은 적용에 어려움이 존재합니다. 교착상태를 처리하는 다른 기법인 교착상태 회피는 안전순서열이라는 개념을 이용하여 교착상태를 피하는 방법이고, 교착상태 탐지 및 복구는 교착상태가 발생하면 사후처리를 하는 방법입니다. 이번 강의에서는 교착상태를 회피하는 방법을 자세히 알아보고, 교착상태를 탐지 및 복구하는 방법에 대해서도 살펴봅니다.
 학습목표
  1. 교착상태를 회피하는 방법을 설명할 수 있다.
  2. 교착상태를 탐지하고 복구하는 방법을 설명할 수 있다.
정리하기
  1. 교착상태 회피는 프로세스의 자원 사용에 대한 사전 정보를 활용하여 교착상태가 발생할 수 있는 불안전상태가 되는 것을 피하는 방법이다.
  2. 변형된 자원할당 그래프에서 요구간선을 할당간선으로 바꾸어도 사이클이 생기지 않는 안전상태일 경우에만 자원 요구를 수용한다.
  3. 은행원 알고리즘은 프로세스가 요구한 자원을 할당해 줄 경우에도 안전순서열이 존재하는지 검사하여 자원 요구의 수용 여부를 결정한다.
  4. 교착상태 탐지 및 복구는 교착상태가 발생했는가를 탐지한 후, 희생자를 선택하여 해당 프로세스를 중지시키거나 자원을 선점하는 방법이다.
  5. 교착상태 탐지 알고리즘은 현재 상태의 모든 자원 요구량을 고려하여 교착상태 여부를 확인한다.