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

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

작성한 질문수

CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조

CPU 스케줄링 알고리즘 #1. 비선점형(FCFS, SJF, 우선순위) ★★★

라운드 로빈 / 다단계 큐 질문입니다

작성

·

368

0

안녕하세요? 강의 잘 듣고 잇습니다

 

1.라운드 로빈과 관련된 질문인데요

책이나 설명에 보면,라운드 로빈은 현대 컴퓨터에 적용되는 우선순위 스케줄링이라고 말씀해주셧는데요

대략적인 원리는 이해했는데, '우선순위'가 어떤식으로 적용되는지 모르겠습니다

오히려 우선순위같은 거 신경안쓰는 FCFS가 업그레이드 된 느낌인데, 우선순위가 어떻게 적용되는건가요?

2.다단계 큐 관련한 질문입니당

예를들면 1~12까지 프로세스가 있고 , FCFS와 SJF그리고 RR이 적용된 큐가 다음과 같이 있다고 하면

1,2,3,4 > FCFS

5,6,7,8 > SJF

9,10,11,12 > RR

CPU입장에서는 1,2,3,4를 처리하고 / 처리가 다될 경우에 5,6,7,8을 SJF방식으로 처리하고

마지막으로 9,10,11,12 를 RR방식으로 처리하게 되는걸까요?

그러면 반대로 9,10,11,12 이쪽의 애들은 1~8이 처리되지 못하면 수행될 수 없는건가요??

답변 1

0

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

1.라운드 로빈과 관련된 질문인데요

책이나 설명에 보면,라운드 로빈은 현대 컴퓨터에 적용되는 우선순위 스케줄링이라고 말씀해주셧는데요

대략적인 원리는 이해했는데, '우선순위'가 어떤식으로 적용되는지 모르겠습니다

오히려 우선순위같은 거 신경안쓰는 FCFS가 업그레이드 된 느낌인데, 우선순위가 어떻게 적용되는건가요?

>> 라운드로빈은 우선순위 스케줄링알고리즘이 아닙니다. 해당 부분 수정하겠습니다. (저게 왜.. 흑흑ㅜㅜ..) 틀린 부분을 찾아주셔서 정말 감사합니다. 하하.. 라운드로빈은 단순한 선점형 알고리즘으로. 할당받은 시간(타임슬라이스) 동안 작업을 하다가 작업을 완료하지 못하면 준비 큐의 맨 뒤로 가서 자기 차례를 기다리는 방식입니다.

2.다단계 큐 관련한 질문입니당

예를들면 1~12까지 프로세스가 있고 , FCFS와 SJF그리고 RR이 적용된 큐가 다음과 같이 있다고 하면

1,2,3,4 > FCFS

5,6,7,8 > SJF

9,10,11,12 > RR

CPU입장에서는 1,2,3,4를 처리하고 / 처리가 다될 경우에 5,6,7,8을 SJF방식으로 처리하고

마지막으로 9,10,11,12 를 RR방식으로 처리하게 되는걸까요?

그러면 반대로 9,10,11,12 이쪽의 애들은 1~8이 처리되지 못하면 수행될 수 없는건가요??

>> 네 맞습니다.

image

다단계 큐 방식은 우선순위 다단계 큐라고도 하는데요. 우선순위가 높은 프로세스들을 먼저 처리하게 됩니다. 그렇기 때문에 영빈님 말씀처럼 마지막의 9, 10.. 얘네들이 실행이 안되는 기아현상(starvation) 현상이 발생하기도 해요.

감사합니다.

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

작성한 질문수

질문하기