SJF 스케줄링 동작 방식
- 준비 큐에 있는 프로세스 중에서 실행 시간이 가장 짧은 작업부터 CPU를 할당하는 비선점형 방식.
- 최단 작업 우선 스케줄링이라고도 하며, 콘보이 효과를 완화하여 시스템의 효율성을 높이는 데 도움을 준다.
특징
- 비선점형 방식
- CPU를 가장 작은 CPU 버스트를 가진 프로세스에게 할당한다.
- 같은 CPU 버스트를 가진 경우, FCFS(First Come First Serve) 방식을 따른다.
- 평균 대기 시간이 최소화 된다.
문제점
- 각 프로세스의 CPU 버스트 길이를 예측하기 어렵다.
SJF 스케줄링의 효과 및 한계
효과
- 짧은 작업 우선: 짧은 작업을 긴 작업의 앞에 배치함으로써 긴 작업의 대기 시간은 증가하나, 짧은 작업의 대기 시간을 크게 줄일 수 있다.
- 평균 대기 시간 감소: 전체적으로 평균 대기 시간을 줄이는 효과가 있다.
한계 및 해결 방안
- 작업 스케줄링의 한계: SJF는 특히 작업 스케줄링에서 유용하게 사용되는 기법이다. 하지만, 단기 스케줄링 단계에서 다음 프로세스의 프로세서 버스트 시간을 예측하기 어렵기 때문에 하드웨어 구성에 어려움이 발생한다.
- 근사치 사용: 실제 하드웨어 및 운영 체제에서는 SJF의 이론적 모델을 완벽하게 구현하기 어려워 이를 근사치로 적용하여 실제 시스템에 적용한다. 이는 통계적 방법이나 과거의 실행 패턴을 기반으로 한 예측을 포함할 수 있다.
'운영체제' 카테고리의 다른 글
우선순위 스케줄링 (Priority Scheduling) (0) | 2024.04.21 |
---|---|
선점형 SJF 스케줄링 (SRTF: Shortest-Remaining Time First) (0) | 2024.04.21 |
CPU 스케줄링 (1) | 2024.04.21 |
프로세스의 구조와 fork() 시스템 호출의 개념 (0) | 2024.04.21 |
컴퓨터 시스템의 인터럽트 처리 매커니즘 (0) | 2024.04.21 |