교착상태의 의미
일어나지 않을 사건을 기다리며 진행이 멈춰 버리는 현상
교착상태를 해결하기 위해서
1. 교착 상태가 발생했을 때의 상황을 정확히 표현
2. 교착 상태가 일어나는 근본적인 이유
자원 할당 그래프
교착 상태가 발생했을 때의 상황을 정확히 표현하기 위한 그래프
교착 상태 발생 조건 파악 가능
어떤 프로세스가 어떤 자원을 할당 받아 사용 중인지 확인 가능
어떤 프로세스가 어떤 자원을 기다리고 있는지 확인 가능
프로세스는 원으로, 자원의 종류는 사각형으로 표현
사용할 수 있는 자원의 개수는 자원 사각형 내에 점으로 표현
프로세스가 어떤 자원을 할당 받아 사용 중이라면 자원에서 프로세스를 향해 화살표를 표시
프로세스가 어떤 자원을 기다리고 있다면 프로세스에서 자원으로 화살표를 표시
교착 상태가 발생할 조건
교착 상태가 일어나는 근본적인 이유를 나타낸 조건
1. 상호 배제: 한 프로세스가 사용하는 자원을 다른 프로세스가 사용할 수 없는 상태
2. 점유와 대기: 자원을 할당 받은 상태에서 다른 자원을 할당받기를 기다리는 상태
3. 비선점: 어떤 프로세스도 다른 프로세스의 자원을 강제로 빼앗지 못하는 상태
4. 원형 대기: 프로세스들이 원의 형태로 자원을 대기하는 상태 (자원할당그래프에서 원의 형태를 띔)
'CS > [혼자 공부하는] 운영체제' 카테고리의 다른 글
6-1] 가상 메모리: 연속 메모리 할당 (0) | 2023.06.08 |
---|---|
5-2] 교착상태: 교착 상태 해결 방법 (0) | 2023.06.08 |
4-2] 프로세스 동기화: 동기화 기법 (0) | 2023.06.07 |
4-1] 프로세스 동기화: 동기화란 (0) | 2023.06.06 |
3-2] CPU 스케줄링: CPU 스케줄링 알고리즘 (0) | 2023.06.06 |