데드락

· 🛠️ OS
교착 상태 해결 방법: 1)예방, 2)회피, 3)검출 후 회복 1. 교착 상태 예방 애초에 교착 상태가 발생하지 않도록 하는 것 교착 상태 발생 조건(상호 배제, 점유와 대기, 비선점, 원형 대기) 중 하나를 없애버리기 상호 배제를 없애면? 모든 자원을 공유 가능하게 만든다? → 이론적으로는 가능하지만, 현실적으로 불가능함 점유와 대기를 없애면? 특정 프로세스에 자원을 모두 할당하거나, 아예 할당하지 않는 방식으로 배분 → 자원의 활용률을 낮출 수 있는 방식 단점: 자원의 활용도가 떨어짐 비선점 조건을 없애면? 선점이 가능한 자원(ex. CPU)에 한해 효과적임 → 모든 자원이 선점 가능한 것은 아니다 원형 대기 조건을 없애면? 자원에 번호를 붙이고 오름차순으로 할당하면 원형 대기는 발생하지 않음 가장 ..
· 🛠️ OS
교착상태 일어나지 않을 사건을 기다리며 진행이 멈춰 버리는 현상 교착 상태를 해결 방법의 순서 교착 상태가 발생했을 때의 상황을 정확히 표현해보기 → 표현 방법: 자원 할당 그래프 교착 상태가 일어나는 근본적인 이유 이해하기 1) 자원 할당 그래프 그래프를 그려보면 교착 상태 발생 조건을 파악할 수 있음 어떤 프로세스가 어떤 자원을 할당받아 사용 중인지 확인 가능 어떤 프로세스가 어떤 자원을 기다리고 있는지 확인 가능 그리는 방법 프로세스는 원으로, 자원의 종류는 사각형으로 표현 사용할 수 있는 자원의 개수는 자원 사각형 내에 점으로 표현 프로세스가 어떤 자원을 할당 받아 사용 중이라면 자원에서 프로세스를 향해 화살표를 표시 프로세스가 어떤 자원을 기다리고 있다면 프로세스에서 자원으로 화살표를 표시그리는..
JINiOS
'데드락' 태그의 글 목록