Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

p321, p322 에서 대기상태 큐에 대한 설명에 관하여. #40

Closed
happineer opened this issue Mar 12, 2023 · 1 comment
Closed

Comments

@happineer
Copy link

안녕하세요. 좋은 책 만들어주셔서, 잘 보고 있습니다 :)
책을 보다가 문의사항이 있어서 github에 이슈 등록합니다.


아래 그림은 p321 의 큐 그림이고,
image

아래 그림은 p322 의 큐 그림입니다.
image

대기 큐로 들어가는 조건이 서로 상이하게 설명되어 있어서 이 부분이 조금 헷갈리는데요.

  1. p321에서는 입출력 장치 요청
  2. p322에서는 입출력 완료(인터럽트)

제가 이해하고 있는 것은 p321 처럼 입출력장치 요청이 맞지 않나? 생각하고 있습니다.
그래서 p321 의 "대기 큐"에 대한 설명이.. 현재는 "입출력장치를 이용하기 위해 대기 상태에 접어든 프로세스들이 서는 줄" 이라고 되어 있는데, "입출력장치에 요청을 하고, I/O작업이 끝나기를 기다리고 있는 프로세스들이 서는 줄" 이 더 맞는 표현이 아닌가 싶은데,

일단 제가 이해하고 있는 것이 맞는지에 대해서 확인부탁드리고 싶습니다.

@kangtegong
Copy link
Owner

안녕하세요,
좋게 읽어주셔서 감사드립니다.

대기 큐로 들어가는 조건이라고 잘못 이해하신 듯 합니다.
정확히 표현하자면

전자는 대기 큐에 들어가기 위한 조건
후자는 대기 큐에 나오기 위한 조건이라고 보면 됩니다.

본문에 명시된 아래 표현을 참고 바랍니다.

  • 대기 큐는 입출력장치를 이용하 기 위해 대기 상태에 접어든 프로세스들이 서는 줄을 의미합니다
  • _ 같은 장치를 요구한 프로세스들은 같은 대기 큐에서 기다립니다_
  • 입출력이 완료되어 완료 인터럽트가 발생하면 운영체제는 대기 큐에서 작업이 완료된 PCB를 찾고, 이 PCB를 준비 상태로 변경한 뒤 대기 큐에서 제거합니다. 당연히 해당 PCB는 준비 큐로 이동합니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants