모의면접으로 학습하는 CS 스터디
- 운영체제 4주차
데커 알고리즘
피터슨 알고리즘
작동 방식
특징
베이커리 알고리즘
세마포어
시스템 자원 사용
잠금
응용 프로그램
각 조건이 중요하게 생각하는 특징
상호 배제, 비선점 조건은 임계구역과 관련이 있음
그러나 임계구역이라도 데드락은 발생함
상호배제
점유대기
비선점
원형대기
예시
식사하는 철학자 문제
해결법 분류
데드락 예방
데드락 회피
자원 할당량을 조절해 데드락을 해결하는 방식
자원을 할당하다 데드락 유발 가능성이 있으면 자원 할당 중단
단점
안정상태 VS 불안정상태
구현 방법 : 은행원 알고리즘
사용하는 변수
변수 | 설명 |
---|---|
전체 자원 | 시스템 내 전체 자원의 수 |
가용 자원 | 시스템 내 현재 사용할 수 있는 자원의 수 |
가용자원 = 전체자원-모든 프로세스 할당 자원 | |
최대 자원 | 각 프로세스가 선언한 최대 자원의 수 |
할당 자원 | 각 프로세스에 현재 할당된 자원의 수 |
기대 자원 | 각 프로세스가 앞으로 사용할 자원의 수 |
안정 상태 => 기대자원 <=가용자원
데드락 검출과 회복
자원 할당 그래프를 모니터링하며 데드락이 발생하는지 살펴보는 방식
데드락 발생 시 데드락 회복 단계 진행
데드락 검출 방법
데드락 회복 방법