인프런 커뮤니티 질문&답변

김주영님의 프로필 이미지
김주영

작성한 질문수

곰책으로 쉽게 배우는 최소한의 운영체제론

프로세스와 스레드

레디큐와 blocking/unblocking

해결된 질문

작성

·

381

0

레디큐에서 cpu 코어 개수만큼 실행된다고 했을때, 예를 들어 8개의 process가 실행된다고 했을때 unblocking 상태라고 하면, 1개의 process에서 입출력 요청이 일어난다면 모든 process가 '대기 상태'가 되나요?

답변 1

0

널널한 개발자님의 프로필 이미지
널널한 개발자
지식공유자

프로세스의 입/출력 요청과 '상태'는 별개의 문제입니다. 그리고 제가 레디 큐 라고 언급한 것은 프로세스(혹은 스레드) 상태가 Suspended가 아니라 Running 상태가 되어 연산 할 준비가 된 상태인 것들을 큐 형식으로 관리하는 구조를 언급한 것입니다.

큐는 하나지만 코어가 여럿일 경우 여러 CPU 코어가 한 큐로부터 처리할 목록을 꺼내와 처리하게 됩니다. 상태가 Running 상태이므로 아직 CPU 연산 전 이라 하더라도 상태는 '대기'가 아닌 Running 상태로 봐야 하겠습니다. 참고하시기 바랍니다.

김주영님의 프로필 이미지
김주영

작성한 질문수

질문하기