[#18] CPU 스케줄링 :: Q/A

Fuji ㅣ 2022. 8. 25. 20:39

시스템 내 전체 프로세스의 수를 조절하는 것으로, 장기 스케줄링 또는 작업 스케줄링이라 불리는 스케줄링 수준은 무엇인가?
더보기

 고수준 스케줄링

전체 시스템의 부하를 고려하여 작업을 시작할지 말지를 결정하는 단계. 시스템의 전체 프로세스 수가 결정된다. 이를 멀티프로그래밍 정도(degree of multiprogramming)이라 한다. 

 

어떤 프로세스에 CPU를 할당하고 어떤 프로세스를 대기 상태로 보낼지 등을 결정하는 스케줄링 수준은 무엇인가?
더보기

 저수준 스케줄링 

실제로 작업이 이루어지는 단계이며, 프로세스를 실행 상태로 옮기기도 하고, 대기 상태로 보내기도 하며, 타임 아웃으로 준비 상태로 돌려보내기도 한다.

 

어떤 프로세스가 CPU를 할당받아 실행 중이더라도 운영체제가 CPU를 강제로 빼앗을 수 있는 스케줄링은 무엇인가?
더보기

 선점형 스케줄링

어떤 프로세스가 CPU를 할당받아 실행 중이더라도 운영체제가 CPU를 강제로 빼앗을 수 있는 스케줄링 방식

 비선점형 스케줄링

어떤 프로세스가 CPU를 점유하면 다른 프로세스가 이를 빼앗을 수 없는 스케줄링 방식

 

현재 입출력을 진행하는 프로세스로, 사용자와 상호작용이 가능하며 상호작용 프로세스라고도 불리는 것은?
더보기

 전면 프로세스

윈도우에 여러 프로그램을 실행하면 제일 최상단에 있는 프로그램을 생각하면 된다. 상호작용 프로세스라고도 한다.

 후면 프로세스

사용자의 입력이 필요 없기 때문에, 스케줄링 우선 순위가 떨어진다. 일괄 작업 프로세스라고도 한ㄷ.

 

준비 큐에 도착한 순서대로 CPU를 할당하는 비선점형 스케줄링 알고리즘은 ?
더보기

 FCFS 스케줄링 (= First Come First Served)

준비 큐에 도착한 순서대로 CPU를 할당하는 비선점형 방식, 선입선출 스케줄링이라고도 한다.

 

준비 큐에 있는 프로세스 중 실행 시간이 가장 짧은 작업부터 CPU를 할당하는 비선점형 스케줄링 알고리즘은?
더보기

SJF 스케줄링 (= Shortest job First)

 

SJF 스케줄링 알고리즘의 단점으로 크기가 큰 작업이 계속 뒤로 밀리는 현상을 무어이라 하는가?
더보기

아사현상(starvation) , 무한 봉쇄 현상(infinite blocking)

 

아사 현상을 해결하는 방법을 설명하시오.
더보기

나이 먹기(에이징)으로 완화 가능하다. 프로세스가 자신의 순서를 양보할 때마다 나이를 한 살씩 먹어 최대 몇 살까지만 양보하도록 규정하는 방식이다.

 

서비스를 받기 위해 대기한 시간과 CPU 사용 시간을 고려하여 우선 순위를 정하는 스케줄링 알고리즘은 무엇인가?
더보기

 HRN 스케줄링 (Highest Respone Ratio Next)

아사 현상을 해결하기 위해 만들어진 비선점형 알고리즘

 

프로세스가 할당받은 시간(타임 슬라이스)동안 작업하다가 작업을 완료하지 못하면 준비 큐의 맨 뒤로 가서 다음 자기 차례가 올 때까지 기다리는 선점형 스케줄링 알고리즘 중 가장 단순한 것은 무엇인가?
더보기

 라운드 로빈 스케줄링

 

타임 슬라이스의 크기와 문맥 교환의 관계를 설명하시오.
더보기

타임 슬라이스가 큰 경우 하나의 작업이 끝난 뒤 다음 작업이 시작되는 것처럼 보인다.

타임 슬라이스가 작은 경우 시스템의 전반적인 성능이 떨어진다. 이는 문맥 교환이 너무 자주 일어나 문맥 교환에 걸리는 시간이 실제 작업보다 상대적으로 커지며, 문맥 교환에 많은 시간을 나이하여 실제 작업을 못하는 문제가 발생한다.

 

기본적으로 라운드 로빈 방식을 사용하지만, CPU를 할당받을 프로세스를 선택할 때 남아있는 작업 시간이 가장 적은 것을 선택하는 스케줄링 알고리즘은 무엇인가?
더보기

SRT 스케줄링 (Shortest Remaining Time)

 

우선순위에 따라 준비 큐를 여러 개 사용하며 고정형 우선순위를 적용하는 스케줄링 알고리즘은 무엇인가? 
더보기

다단계 큐 스케줄링 (multilevel queue)

 

우선순위에 따라 준비 큐를 여러 개 사용하며, 프로세스가 CPU를 사용한 후 우선순위가 낮아지는 특징을 가진 스케줄링 알고리즘은 무엇인가?
더보기

다단계 피드백 큐 스케줄링(multilevel feedback queue)

 

다단계 피드백 큐 스케줄링에서 마지막 큐에 있는 프로세스(우선순위가 가장 낮은 프로세스)의 타임 슬라이스 크기는 얼마인가?
더보기

무한대의 타임슬라이스 크기를 갖게되며 FCFS 방식으로 프로세스 작업이 완료할 때까지 주어진다.

 

다단계 피드백 큐 스케줄링에서 우선순위가 낮아질수록 타임 슬라이스의 크기는 어떻게 변하는가?
더보기

타임 슬라이스의 크기가 2배씩 증가하다가 마지막 큐에 도달하면 무한대로 증가한다.