[운영체제] 운영체제 2장 연습문제
- 최초 등록일
- 2013.09.22
- 최종 저작일
- 2012.05
- 2페이지/ 한컴오피스
- 가격 1,000원
목차
7. 블록/깨우기 메커니즘에서, 프로세스는 어떤 이벤트가 발생하기를 대기할 때 자신을 블록한다. 다른 프로세스는 해당 이벤트 발생을 추적해야 하고 블록 된 프로세스를 깨워야 한다. 프로세스가 전혀 발생하지 않을 이벤트를 기다리느라 자신을 블록 할 가능성도 있다.
9.어떤 시스템에서는 부모프로세스가 소멸될 때 자식 프로세스들이 자동적으로 소멸된다. 다른 시스템에서는 자식 프로세스들이 부모 프로세스에 독립적으로 진행되므로, 부모 프로세스의 종료가 자식 프로세스에 전혀 영향을 미치지 않는다.
11.이 책에서 반복적으로 살펴보겠지만 대기관리는 운영체제서 필수적인 부분이다. 이 장에서는 몇 가지 대기 상태, 즉 준비, 블록, 일시정지 준비, 일시정지 블록 상태를 살펴봤다. 프로세스가 어떻게 각 상태가 되는지, 프로세스가 무엇을 대기하는지, 프로세스가 해당 상태에서 무한정 대기하다가 잘못될 확률에 대해 논의하라.
본문내용
7. 블록/깨우기 메커니즘에서, 프로세스는 어떤 이벤트가 발생하기를 대기할 때 자신을 블록한다. 다른 프로세스는 해당 이벤트 발생을 추적해야 하고 블록 된 프로세스를 깨워야 한다. 프로세스가 전혀 발생하지 않을 이벤트를 기다리느라 자신을 블록 할 가능성도 있다.
a. 운영체제가 전혀 발생하지 않을 이벤트를 기다리느라 프로세스가 블록 된 사실을 탐지할 수 있는가?
- 탐지할 수 있다.
b. 프로세스들이 무한정 이벤트를 기다리는 일을 방지하기 위해 운영체제에 어떤 적절한 안전 장치를 둘 수 있는가?
- 대기(blocked)상태란 프로세스가 CPU를 차지하고 실행되다가 입출력 처리와 같은 이벤트가 발생하게 되면, CPU를 양동하고 입출력 처리가 완료될 때 까지 대기 큐에서 대기하는 상태를 말한다. 따라서 대기 중인 프로세스는 입출력의 완성 등 외부 신호를 기다리고 있게 된다.
실행 상태에 있는 프로세스가 지정된 할당 시간을 초과하기 전에 입출력이나 기타 이벤트가 발생하면 CPU를 스스로 반납하고 입출력이 완료될 때까지 대기(block)상태로 전환된다. 물론 이때에도 준비리스트에 있는 다른 프로세스가 CPU를 할당받게 된다. 언젠가 입출력이 완료되면 대기 상태의 프로세스에게 입출력 완료 사실을 ‘Wait & Signal’ 등으로 알려 준비 상태로 전환시켜야 한다. 이것이 깨우기이다.
참고 자료
없음