[운영체제/연습문제] 7장 교착상태
7장 교착상태
1. 젓가락과 숟가락이 하나씩만 있는 식탁에서 두 사람이 식사를 한다고 하자. 숟가락과 젓가락을 동시에 들어야 한 입 식사가 가능하며, 숟가락이든 젓가락이든 한 번에 하나 씩 들어야 한다. 한 개만 가진 사람은 나머지 한 개가 준비될 때까지 기다려야 한다. 한 입 식사 후 들고 있던 숟가락과 젓가락은 모두 내려놓으며, 둘은 대화할 수 없다고 할 때, 두 사람이 식사하는 동안 교착 상태가 발생하는 상황을 사례를 들어 설명하라.
두 사람이 동시에 도착하여 나란히 앉아 식사를 진행하는 경우 먼저 숟가락을 든 철학자가 식사를 하는 동안 다른 철학자는 숟가락을 기다려야하는 상황이 발생한다.
2. 식사하는 철학자 문제를 잘못 기술한 것은?
① 식사하는 철학자 문제는 공유 자원에 대한 멀티스레드의 스케줄링 문제이다
3.식사하는 철학자 문제를 해결하는 방법으로 적합한 것을 있는 대로 골라라
① 철학자가 하나의 포크를 들고 다른 포크를 1분 이상 기다릴 때, 두 포크를 놓고 잠시 생각한 뒤 다시 식사를 하면 해결된다.
② 식당에 지배인을 두고 지배인이 포크를 대기하고 있는 철학자가 있을 때, 기다리는 포크를 가지고 1분 이상 식 사하고 있는 옆 철학자의 포크를 뺏어 주면 된다
③ 포크마다 번호를 매기고 포크가 필요할 때 번호 순으로 포크를 들게 하면 해결된다.
4. 식사하는 철학자 문제가 단일 CPU에서도 발생할 수 있는가, 없는가
발생할 수 있다. 한 프로세스가 자원을 가진 채 컨텍스트 스위칭되어 hold & wait 상태라면 서로의 자원을 요구하는 Deadlock이 발생할 수 있다.
5. 다음 문장의빈 곳에 적절한 단어를 선택하여 문장을 완성하라.
식사하는 철학자, 교착상태, 코프만, 타조 알고리즘
6. 코프만의 4가지 조건에 해당하지 않는 것은?
① 우선순위 역전
7. 다음 자원할당 그래프에 대한 설명으로 맞는 것은?
④ 자원할당 그래프는 자원을 할당하는 과정에서 만들어진다
8. 다음 자원 할당 그래프에 대한 설명으로 틀린 것은?
④ 현재 상태를 보니 교착상태를 해결하기 위해 Lock2를 강제로 T1 스레드에게 할당하면 된다
9. 다음 자원 할당 그래프 중 교착상태를 나타내는 것은 있는 대로 골라라
③
10. 코프만 조건은 어떤 문제에 관한 것인가?
① 교착상태
11. 교착상태 무시 전략이 나오게 된 배경이 아닌 것은?
② 교착상태가 발생한다고 피해가 발생하는 것은 아니다
12. 교착상태 예방 전략의 이론적 배경은?
① 코프만 조건
13. 자원할당 그래프를 전혀 사용할 필요가 없는 교착상태 해결 전략은?
④ 교착상태 무시
14. 교착상태 관련 알고리즘 중 타조 알고리즘에 대한 설명을 틀린 것은
③ 타조가 머리를 모레에 박은 것처럼 교착상태가 지나가도록 기다리는 방법이디
15. 교착상태 해결 방법 중 타조 알고리즘이 적합한 상황은?
① 개인용 pc
16. 교착상태 감지 및 복구와 관련된 방법이 아닌 것은?
② 모든 자원에 번호를 붙이고 각 스레드는 자원을 할당받을 때 작은 번호의 자원부터 할당받도록 함
17. 교착상태 감지 및 복구 방법에 대한 설명으로 틀린 것은?
® 사용자나 시스템 관리자가 교착상태가 발생하였다고 생각되면 시스템을 재시작 시킨다
18.교착상태에 대한 설명으로 옳은 것은?
② 교착상태는 몇 몇 스레드들 사이에서 발생하므로 이들만의 문제이지 시스템 전체의 문제는 아니다
19. 교착상태는 주로 어디에서 발생하는가?
① 사용자가 작성한 멀티스레드 응용프로그램의 스레드들 사이에