다중 프로그래밍 상에서 두 개의 프로세스가 실행 중에 있게 되면, 각 … | [정보처리기능사 필기] 08년 5회차 기출문제 상세 페이지
1[정보처리기능사 필기] 08년 5회차
다중 프로그래밍 상에서 두 개의 프로세스가 실행 중에 있게 되면, 각 프로세스는 자신이 필요한 자원을 가지고 실행되다가 서로 자신이 점유하고 있는 자원을 포기하지 않은 상태에서 다른 프로세스의 자원을 요구하는 경우가 발생한다. 이 경우 두 프로세스는 모두 더 이상 실행을 할 수 없게 된다. 이러한 현상을 무엇이라 하는가?
1
세마포어(Semaphore)
2
가상시스템(Virtual System)
3
교착상태(Dead Lock)
4
임계영역(Critical Section)
해설
서로 자신이 점유한 자원을 내놓지 않은 채 상대의 자원을 기다려 어느 프로세스도 더 이상 진행하지 못하는 상태를 교착상태(Dead Lock)라 하므로 정답이다.
교착상태는 상호배제, 점유와 대기, 비선점, 순환대기 조건이 동시에 성립할 때 발생하는 다중 프로그래밍 환경의 대표적 문제이다.
- ① 세마포어(Semaphore) — 임계구역 접근을 제어하는 동기화 도구로, 교착상태 자체를 가리키는 용어가 아니다.
- ② 가상시스템(Virtual System) — 실제 자원을 가상화하여 제공하는 개념으로 자원 경쟁 상황과 무관하다.
- ④ 임계영역(Critical Section) — 공유 자원에 동시에 접근하면 안 되는 프로그램 영역을 뜻하며, 자원을 서로 기다리는 교착상태와는 다르다.
오류나 개정된 내용이 보이면 알려주세요