
교착 상태
: 일어나지 않을 사건을 기다리며 무한히 대기하는 현상
해결하기 위해서
- 교착 상태가 발생했을 때의 상황을 정확히 표현 (
자원 할당 그래프)- 교착 상태가 일어나는 근본적인 이유 알기 (
발생할 조건)
자원 할당 그래프
: 어떤 프로세스가 어떤 자원을 사용하고 있고, 어떤 자원을 기다리고 있는지 표현
프로세스는 원,자원의 종류는 사각형으로 표현
- 사용할 수 있는 자원의 개수는 자원 사각형 내에 점에 표현
- 프로세스가 어떤 자원을 할당받아 사용 중이라면 자원에서 프로세스를 향해 화설표를 표시
- 프로세스가 어떤 자원을 기다리고 있다면 프로세스에서 자원으로 화살표를 표시
📍참고) 교착 상태가 발생한 상황은 그래프가 원의 형태 (무조건 발생X, 가능성이 생기는거임)
교착 상태가 발생할 조건
상호 배제
: 한 프로세스가 사용하는 자원을 다른 프로세스가 사용할 수 없는 상태점유와 대기
: 자원을 할당 받은 상태에서 다른 자원을 할당 받기를 기다리는 상태비선점
: 어떤 프로세스도 다른 프로세스의 자원을 강제로 빼앗지 못하는 상태원형 대기
: 프로세스들이 원의 형태로 자원을 대기하는 상태📍참고)
- 4가지 조건 중 하나라도 만족하지 않으면 교착 상태 발생X
- 4가지 조건 모두 만족하면 교착 상태가 발생할 수 있음 (무조건 발생X, 가능성이 생기는거임)
<출처>
"혼자 공부하는 컴퓨터구조+운영체제".강민철.https://www.youtube.com/playlist?list=PLVsNizTWUw7FCS83JhC1vflK8OcLRG0Hl (2023.05.07)
책과 강의를 통해 학습한 내용을 요약 정리했습니다.