우선순위 스케줄링
CPU 스케줄링
우선순위 스케줄링 개념
우선순위 스케줄링이란?
우선순위가 높은 프로세스에게 먼저 CPU를 할당하는 방식
선점, 비선점 둘 다 가능
우선순위가 같으면 FCFS 정책을 따름
우선순위는 보통 정수값으로 나타내며 낮은 수일수록 높은 우선순위를 나타냄
우선순위 스케줄링의 단점
1. 우선순위가 낮은 프로세스는 무기한 대기 현상이 일어남 (기아현상, 에이징 기법으로 해결할 수 있음)
우선순위 스케줄링을 실행했을 경우, 결과를 알아보자.
프로세스 |
버스트 시간 |
우선순위 |
P1 |
10ms |
3 |
P2 |
1ms |
1 |
P3 |
2ms |
4 |
P4 |
1ms |
5 |
P5 |
5ms |
2 |
위와 같은 프로세스를 처리하는 스케줄링 표 ↓
P2 |
P5 |
P1 |
P3 |
P4 |
0 1 6 16 18 19(ms)
→ 우선순위가 더 먼저인 프로세스부터 CPU 작업 시간을 할당한다. 만일 도착 시간이 존재해 P1을 처리하고 있는 도중 우선순위가 더 높은 프로세스가 들어오면 P1을 중단시키고 우선순위가 더 높은 프로세스를 처리한다. P1은 처리하기 까지 6초를, P2는 0초를, P3는 16초를, P4는 18초를, P5는 1초를 기다렸으므로 평균 대기 시간은 8.2초, 반환 시간은 12초이다.
'a major field of study' 카테고리의 다른 글
기수 정렬 (0) | 2018.07.02 |
---|---|
MQ, MFQ 스케줄링 (0) | 2018.06.21 |
RR 스케줄링 (0) | 2018.06.21 |
SRTF 스케줄링 (0) | 2018.06.21 |
SJF 스케줄링 (0) | 2018.06.21 |