강의

멘토링

로드맵

Inflearn brand logo image

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

송사무엘님의 프로필 이미지
송사무엘

작성한 질문수

그림으로 쉽게 배우는 운영체제

RR

3:59초에 대해서 궁금해요!

작성

·

92

·

수정됨

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

image.png

 

시간 계산에서 처음에는 대기 시간이 0초 이해됩니다.

p2시작 대기 시간 10초 ok,

p3 시작 대기 시간 14초 ok,

2번째 p1 시작 대기 시간 24초 아닌가요?

p3에서 시작 대기 시간이 14초인데 p3가 끝나고 10초가 걸렸으니

2번째 p1에서 시작 대기 시간이 24초가 되는 것 아닌가요? 헷갈립니다.

 

p3 시작 대기 시간을 계산할 때는 1번째 p1의 10초를 넣었는데 2번째 p1의 시작 대기 시간을 구할 때 1번 p1의 10초를 왜 빼는지 이해가 안됩니다. 완성이 되지 않더라도 우선 시간이 흘렀으니 더하는게 맞는게 아닌가요?

답변 2

0

감자님의 프로필 이미지
감자
지식공유자

안녕하세요 송사무엘님!

해당 영상에서 주목해야 할 점은 프로세스 번호이니다.

두 번째 P1의 경우 첫 번째 P1의 작업이 종료된 시점부터 대기시간을 측정하는 것이라 14초가 나왔습니다.

같은 이유로 세 번째 P1의 경우 34초가 아니라 0초로 측정된 것입니다.

궁금증이 해결되셨나요?😀

0

안녕하세요, 인프런 AI 인턴입니다. 송사무엘님.

질문하신 내용에서 대기 시간 계산 방식에 대한 혼동을 가지신 것 같습니다. 교차 스케줄링 상황에서 개별 프로세스가 실행되는 시간을 고려할 때, 대기 시간을 계산하는 방식이 중요한데요, 이를 이해하는 데 도움을 드리겠습니다.

이해를 돕기 위한 간단한 설명

  1. 초기 대기 시간:

    • 프로세스가 처음으로 CPU를 획득하기까지 기다리는 시간을 x축 기준으로 잡습니다.
  2. 프로세스 스위칭 이해:

    • MLFQ(다중 레벨 피드백 큐) 환경에서는 프로세스가 우선순위 큐에 속해 있으며 특정 시간 단위(타임 슬라이스) 내에 실행되고 그 이후에는 대기 큐로 이동되어 다른 프로세스에게 CPU를 넘겨줍니다.
  3. 다음 대기 시간 계산:

    • 계산에서 간과하기 쉬운 점은 이미 소진한 타임 슬라이스 동안의 대기 상황을 감안해야 한다는 것입니다. 이는 단순히 각 타임 슬라이스의 끝에서 대기 시간만 더하는 것이 아니라, 다음 순서까지 기다린 시간을 종합적으로 고려합니다.

이미지와 대기 시간 관련

이미지를 보시면, 각 프로세스의 색상 블록이 프로세스끼리 어떻게 시간을 교대로 사용하는지를 보여줍니다. 대기 시간은 프로세스가 자신의 직전 실행이 끝나고 나서 다시 실행될 때까지 기다린 총 시간을 의미합니다. 따라서, p3가 끝나고 나서 p1이 다시 실행되기까지의 전체 대기 시간을 계산할 때, 이미 이전에 실행된 시간을 빼고 새 대기 시간을 더하게 됩니다.

해당 내용에 대한 보다 상세한 설명이 필요하시면 이전 유사 질문 및 답변을 참고하시기 바랍니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

송사무엘님의 프로필 이미지
송사무엘

작성한 질문수

질문하기