SJF 스케줄링
IT위키
더 많은 작업
- Shortest Job First
- 비선점 프로세스 스케줄링 기법 중 하나로, 짧은 작업부터 처리한다.
- 가장 적은 평균 대기 시간을 제공한다.
- 작업 시간이 큰 경우 오랫동안 대기해야 한다.
- 기아 현상이 생길 수 있다.
- 각 프로세스의 프로세스 요구시간을 미리 예측하기 어렵다.
네 프로세스가 차례로 큐에 도착했고 모두 대기 중일 때(도착 시간 0) 실행 시간이 다음과 같다.
| 프로세스 | 실행 시간 | 처리 순서 | 대기 시간 |
|---|---|---|---|
| P1 | 6 | 3 | 7 |
| P2 | 8 | 4 | 13 |
| P3 | 4 | 2 | 3 |
| P4 | 3 | 1 | 0 |
- 도착 순서와 관계없이 실행 시간이 가장 짧은 P4 가 가장 먼저 처리되고, P3 → P1 → P2 순으로 이어진다
- 평균 대기 시간은 (0 + 3 + 7 + 13) / 4 = 5.75 다. 같은 작업을 도착 순서(FIFO)로 처리하면 (0 + 6 + 14 + 18) / 4 = 9.5 다