개발

요리책 운영체제. Chapter 6 교착상태 연습문제 풀이

mycloudy 2021. 10. 10. 17:00

Part 2 프로세스 관리

Chapter 6 교착 상태

연습문제

  1. 2개 이상의 프로세스가 서로의 작업이 끝나기만 기다리며 작업을 더 이상 진행하지 못하는 상태를 무엇이라 하는가?
    • 교착 상태 (dead lock)
  2. 프로세스가 어떤 자원을 사용 중이고 어떤 자원을 기다리고 있는지를 나타내는 방향서잉 있는 그래프를 무엇이라 하는가?
    • 자원 할당 그래프
  3. 네 가지 교착 상태 필요조건에 대해 설명하시오.
    1. 상호 배제: 한 프로세스가 사용하는 자원은 다른 프로세스와 공유할 수 없는 배타적인 자원이어야 한다.
    2. 비선점: 한 프로세스가 사용 중인 자원은 다른 프로세스가 빼앗을 수 없는 비선점 자원이어야 한다.
    3. 점유와 대기: 프로세스가 어떤 자원을 할당받은 상태에서 다른 자원을 기다리는 상태여야 한다.
    4. 원형 대기: 점유와 대기를 하는 프로세스 간에 관계가 원을 이루어야 한다.
  4. 교착 상태 해결 방법 중, 교착 상태를 유발하는 네 가지 조건을 무력화하는 방법은 무엇인가?
    • 교착 상태 예방
  5. 교착 상태 해결 방법 중, 교착 상태가 발생하지 않는 수준으로 자원을 할당하는 방법은 무엇인가?
    • 교착 상태 회피
  6. 교찰 상태 해결 방법 중, 자원 할당 그래프를 사용하여 교착 상태를 발견하는 방법은 무엇인가?
    • 교착 상태 검출과 회복 (자원 할당 그래프를 이용한 교착 상태 검출)
  7. 교착 상태 해결 방법 중, 타임아웃을 이용하여 해결하는 방법은 무엇인가?
    • 교착 상태 검출과 회복 (타임아웃을 이용한 교착 상태 검출)
  8. 교착 상태 해결 방법 중, 은행원 알고리즘을 사용하여 해결하는 방법은 무엇인가?
    • 교착 상태 회피
  9. 교착 상태 해결 방법 중, 모든 자원에 번호를 부여하고 낮은 번호의 자원을 사용할 수 없도록 하는 방법은 무엇인가?
    • 원형 대기 예방
  10. 교착 상태 해결 방법 중, 프로세스가 시작 초기에 자신이 사용하려는 모든 자원을 한꺼번에 점유하거나, 그렇지 못할 경우 자원을 모두 반납하는 방법은 무엇인가?
    • 점유와 대기 예방
  11. 교착 상태 해결 방법 중, 교착 상태가 검출되면 교착 상태를 일으킨 모든 프로세스를 종료하는 방법은 무엇인가?
    • 교착 상태 회복
  12. 자원 할당 그래프에서 무엇인 발견되면 교착 상태라고 판단할 수 있는가?
    • 사이클