-
교착상태로부터 회복운영체제/교착상태 2018. 2. 4. 15:02
탐지 알고리즘이 교착상태가 존재한다고 결정하면 운영자가 수작업으로 처리하는 방법과 시스템이 자동으로 교착상태로부터 회복하게 하는 방법이 있다.
교착상태에서 회복 시키는 방법
순환 대기를 깨트리기 위해 단순히 한 개 이상의 프로세스들을 중지시키는 것
교착상태에 있는 하나 이상의 프로세스들로 부터 자원을 선점하는 것
프로세스 종료
교착상태 발생시 문제가 되는 프로세스를 종료함으로써 교착 상태를 해결한다.
종료 방법에는 교착상태 에 연루되어 있는 모든 프로세스를 종료하는 방법과 교착 상태가 없어질 때까지 하나씩 종료하는 방법이 있다.
어느 프로세스를 종료할지 결정하는 요인
프로세스의 우선순위
프로세스의 남은 시간과 수행된 시간
프로세스가 사용한 자원의 타입과 수
프로세스 종료까지 필요한 자원의 수
종료되어야 할 프로세스 수
프로세스의 종류
자원 선점
자원 선점을 이용해 교착상태를 제거하려면 교착상태가 깨어질 때까지 프로세스로부터 자원을 계속적으로 선점해 다른 프로세스에게 주어야 한다.
선점에 대한 고려 요인
희생자 선택 : 어느 프로세스를 희생할지 정해야 한다,
후퇴 : 희생된 프로세스는 더 이상 실행될 수 없으므로 안전하게 실행될 수 있는 지점으로 되돌아가야 한다.
기아상태 : 계속된 희생으로 기아 상태에 빠지는 프로세스가 있을 수 있다.
댓글