///////
Search
5️⃣

심화문제 4 ~ 6

스케줄링

평가기준 오버헤드 ↓ / 사용률 ↑ / 기아 현상 ↓
오버헤드 ↓ / 사용률 ↑ / 기아 현상 ↓
스케줄링 알고리즘끼리 성능 비교시, 주로 평균 대기 시간을 본다.
4.
스케줄링 알고리즘의 선택 기준에 대해 설명하시오.
선택 기준
CPU 사용률 ↑
전체 시스템의 동작 시간 중 CPU가 사용된 시간을 측정
사용율이 높아야 시스템이 빠르게 돌아간다.
처리량 ↑
단위 시간 당 작업을 마친 프로세스 수.
대기 시간 ↓
작업을 요청한 프로세스가 작업 실행까지 대기하는 시간
응답 시간 ↓
프로세스 실행 후 첫 번째 출력 또는 반응이 나올때까지 걸리는 시간
반환 시간 ↓
프로세스 생성 후 종료되어 사용하던 자원을 모두 반환하는데 까지 걸리는 시간
대기 시간 + 실행 시간
5.
FCFS, SJF, HRN 스케줄링의 특징을 설명하시오.
6.
라운드 로빈, SRT, 다단계 큐, 다단계 피드백 큐 스케줄링의 특징을 설명하시오.

선점 / 비선점 스케줄링

선점 (preemptive) : OS가 CPU의 사용권을 선점할 수 있는 경우, 강제 회수하는 경우 (처리시간 예측 어려움)
비선점 (nonpreemptive) : 프로세스 종료 or I/O 등의 이벤트가 있을 때까지 실행 보장 (처리시간 예측 용이함)

CPU 스케줄링의 종류

종류
설명
비선점
FCFS (First Come First Served)
- 대기 큐에 도착한 순서대로 CPU 할당 - 실행 시간이 짧은게 뒤로 가면 평균 대기 시간이 길어짐
비선점
SJF (Shortest Job First)
- 수행 시간이 가장 짧다고 판단되는 작업 먼저 수행 - FCFS 보다 평균 대기 시간 감소, 짧은 작업에 유리 - 단점 : 시간 예측 어려움, 아사현상 높음
비선점
HRN (Hightest Response-ratio Next)
- 우선순위를 계산하여 SJF의 점유 불평등(아사현상) 보완 - 우선순위 = (대기시간 + 실행시간) / (실행시간)
선점
Round Robin
- FCFS와 유사하나 각 프로세스마다 타임슬라이스가 부여됨. 타임 슬라이스 동안 작업이 완료 안되면 큐의 뒤쪽에 다시 삽입 - 할당 시간이 크면 FCFS와 같게 되고, 작으면 문맥 교환이 잦아져서 오버헤드 증가
선점
SRT (Shortest Remaining Time)
- 최소 잔류 시간 우선 스케줄링 - 선점형 SJF (잔류시간이 짧은거 우선)+ 라운드로빈(규정된 타임슬라이드) - 프로세스의 남은 시간을 주기적으로 계산해야 하는 작업이 추가되며, SJF 에서의 단점이 적용된다.
우선순위 스케줄링
- 단점 : 공평성 위배, 아사 현상, 프로세스 우선순위 매번 바꾸며 발생하는 오버헤드 - 시스템 효율성도 중요하나 프로세스 중요도 기준으로 실행되는 것도 중요
선점 우선 순위
다단계 큐
- 우선순위에 따라 준비 큐를 여러 개 사용 - 우선순위에 따라 타임슬라이스를 조정하여 작업 효율을 높임 - 고정형 우선순위, 상위 큐 프로세스 작업이 끝나야 하위 큐 프로세스 실행
선점 우선 순위
다단계 피드백 큐
- 변동 우선순위, CPU를 사용하고 난 프로세스의 우선순위가 낮아짐 - 커널 프로세스는 깍두기 - 우선순위에 따라 큐의 타임 슬라이스 크기를 달리함 , 마지막 큐의 프로세스는 무한대의 타임 슬라이스를 가짐
Round Robin
다단계 큐
다단계 피드백 큐
면접 응용

이번 파트 예상 면접질문