기출문제/정보처리기사

2018년 3회 정보처리기사 기출문제 43번

엉클지니 2025. 5. 17. 17:39

43. 교착상태의 해결 방법 중 회피(Avoidance) 기법과 가장 밀접한 관계가 있는 것은?

    점유 및 대기 방지         비선점 방지

    환형 대기 방지             은행원 알고리즘 사용

 

300x250

 

 이번 문제는 교착상태(Deadlock) 해결 기법 중 "회피(Avoidance)" 전략에 대해 묻고 있어요.


🔍 문제 분석

💡 교착상태란?

  • 여러 프로세스가 서로 자원을 기다리며 무한 대기하는 상태
  • 4가지 조건이 모두 충족되면 발생할 수 있어요:
    1. 상호 배제
    2. 점유 및 대기
    3. 비선점
    4. 환형 대기

🧠 교착상태 해결 방법 4가지

방법 설명

예방 (Prevention) 교착상태 4가지 조건 중 하나 이상을 없애서 원천적으로 막는 방법
회피 (Avoidance) 교착상태가 일어날 수도 있다는 가능성을 고려하여 안전한 상태에서만 자원 할당
발견 (Detection) 교착상태가 실제로 발생한 후 이를 감지하여 처리
회복 (Recovery) 교착상태를 감지한 후 프로세스나 자원 회수 등으로 복구

✅ 정답: ❹ 은행원 알고리즘 사용

👉 왜냐하면?

  • 회피 기법의 대표적인 알고리즘이 바로 **은행원 알고리즘(Banker's Algorithm)**입니다!
  • 이 알고리즘은 각 프로세스가 최대 자원 요구량을 미리 알려주고, 현재 자원 상태가 **안전한 상태(Safe State)**일 때만 자원을 할당합니다.
  • 즉, 교착상태가 발생하지 않을 경우에만 자원을 할당하는 회피 전략의 핵심 도구예요.

❌ 오답 보기 해설

보기 설명 회피 기법과의 관계

① 점유 및 대기 방지 예방 전략의 한 예
② 비선점 방지 자원 강제 회수 → 예방 전략
③ 환형 대기 방지 자원 순서 지정 → 예방 전략
❹ 은행원 알고리즘 사용 회피 전략의 핵심 알고리즘 ✅ 정답

📘 정리 포인트

  • 회피(Avoidance) = 교착상태 가능성을 피함
  • 은행원 알고리즘 = 대표적인 회피 알고리즘
  • 나머지 보기들은 모두 예방(Prevention) 전략에 해당

✅ 정답: ❹ 은행원 알고리즘 사용