Replies: 2 comments
1. 교착 상태(Deadlock)란 무엇이며, 기아 상태(Starvation)와는 어떤 차이가 있나요?교착 상태(Deadlock)란 여러 프로세스가 서로가 가진 자원을 기다리면서 무한히 대기하는 상태를 의미한다. 즉, 어떤 프로세스도 작업을 계속 진행할 수 없는 것이다. 예를 들어,
반면 기아 상태(Starvation)는 특정 프로세스가 계속 실행 기회를 받지 못해 무한히 대기하는 상태이다. 이는 우선순위가 높은 프로세스가 계속 CPU나 자원을 차지하는 경우 발생할 수 있다. 차이점
2. 교착 상태가 발생하기 위해 충족되어야 하는 4가지 필수 조건에 대해 설명해주세요.교착 상태는 다음 4가지 조건이 모두 만족될 때 발생할 수 있다.
이 네 가지 조건이 모두 만족될 때 교착 상태가 발생한다. 3. 교착 상태를 해결하기 위한 3가지 주요 접근 방식(예방, 회피, 검출/회복)의 개념과 차이점을 설명해주세요.
이들의 문제해결 접근 방식을 비교하면,
|
1. 교착 상태(Deadlock)란 무엇이며, 기아 상태(Starvation)와는 어떤 차이가 있나요?두 개 이상의 작업이 서로 상대방의 작업이 끝나기만을 기다려서 꽉 막혀 버려 결과적으로 어떤 작업도 진행되지 못하는 상태를 교착상태 라고 말한다. 기아상태도 자원을 할당받지 못해서 작업을 수행하지 못하는 점에서 비슷해 보일 수 있으나, 기아 상태는 시스템의 자원 할당 정책 즉 우선순위 같은 문제로 자원 할당이 미뤄져서 작업이 멈춘 상태를 말한다. 기아 상태는 오래 대기한 프로세스에게 우선순위를 주는 기법 에이징을 활용해 해결한다/ 2. 교착 상태가 발생하기 위해 충족되어야 하는 4가지 필수 조건에 대해 설명해주세요.교착 상태가 발생하기 위해선 4가지 필요조건이 있다.
3. 교착 상태를 해결하기 위한 3가지 주요 접근 방식(예방, 회피, 검출/회복)의 개념과 차이점을 설명해주세요.교착상태 예방교착상태 필요조건 4가지 중 하나라도 아예 발생하지 않도록 사전에 예방하는 방법이다. 교착상태 회피는 자원 요청이 들어왔을 때, 교착상태가 발생할 가능성이 있는지 안전성을 검사한 뒤에만 자원을 할당해 주는 방법으로 대표적인 알고리즘으로 은행원 알고리즘이 있다. 은행원 알고리즘은 쉽게 말해서 은행에서 빌려줄 수 있는 돈을 정해놓고, 은행도 살아남을 수 있는 최소 돈(안전 상태)을 남겨 둘 수 있도록 하는 알고리즘이다. 만약 불안정 상태에 빠질 위험이 있다면 자원 할당을 거부하고 프로세스를 대기 시킨다! 이 방식은 프로세스가 실행 중에 사용할 최대 자원 요구량을 미리 명시해야 한다. 이는 현실적으로 매우 어렵고 자원이 요청 될 때 마다 매번 시뮬을 돌려야 해서 오버헤드가 크다. 교착 상태 검출/회복교착상태 발생을 사전에 막지 않고 그냥 냅둔 뒤 주기적으로 검사해서 교착상태가 발생했다면 해결하는 방법을 말한다. 이 방식은 검사를 자주 하면 오버헤드가 발생할 수 있지만, 예방이나 회피 방식 보다는 자원의 제약이 적다. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
📆 일자: 26년 7월 31일(금)
발제 의도
1. 교착 상태(Deadlock)란 무엇이며, 기아 상태(Starvation)와는 어떤 차이가 있나요?
2. 교착 상태가 발생하기 위해 충족되어야 하는 4가지 필수 조건에 대해 설명해주세요.
3. 교착 상태를 해결하기 위한 3가지 주요 접근 방식(예방, 회피, 검출/회복)의 개념과 차이점을 설명해주세요.
All reactions