55. 스케쥴링 기법 중 SJF 기법과 SRT 기법에 관한 설명으로 가장 옳지 않은 것은?
① SJF는 비선점(nonpreemptive) 기법이다.
② SJF는 작업이 끝나기까지의 실행시간 추정치가 가장 작은 작업을 먼저 실행시킨다.
③ SRT는 실행 시간을 추적해야 하므로 오버헤드가 증가한다.
❹ SRT에서는 이미 할당된 CPU를 다른 프로세스가 강제로 빼앗아 사용할 수 없다.
아래에 **SJF(Shortest Job First)**와 SRT(Shortest Remaining Time) 스케줄링 기법의 비교표와 함께 자세한 해설을 제공해 드립니다.
✅ SJF vs SRT 스케줄링 기법 비교표
항목 SJF (Shortest Job First) SRT (Shortest Remaining Time)
기법 종류 | 비선점형 (Non-preemptive) | 선점형 (Preemptive) |
기준 | 전체 실행 시간(Burst Time) 중 가장 짧은 것 | 남은 실행 시간(Remaining Time)이 가장 짧은 것 |
선점 가능 여부 | ❌ 선점 불가 | ✅ 선점 가능 (남은 시간 더 짧은 프로세스가 도착 시) |
처리 방식 | 도착 순서와 무관하게 가장 짧은 작업을 먼저 | 현재 실행 중인 작업보다 더 짧은 작업이 도착하면 교체 |
필요한 정보 | 작업의 전체 실행 시간 | 현재 작업의 남은 실행 시간 + 새로운 작업의 도착 모니터링 |
오버헤드 | 낮음 | 높음 (선점 여부 판단과 문맥 교환 발생) |
처리 시간 예측 필요 | 있음 (실제 실행 시간은 도착 전에는 모름) | 있음 (지속적 모니터링 및 비교 필요) |
공정성(Fairness) | 낮음 (짧은 작업이 길게 기다리는 작업보다 우선) | 낮음 (긴 작업은 자주 밀림) |
응답 시간(Response Time) | 느림 (긴 작업은 오래 대기) | 빠름 (짧은 작업은 빠르게 처리됨) |
✅ 개별 해설
🔹 ① SJF는 비선점(nonpreemptive) 기법이다.
- 맞는 설명입니다.
- 한 번 CPU를 할당받은 프로세스는 작업을 마칠 때까지 CPU를 계속 사용합니다.
- 다른 프로세스가 도착하더라도 기존 작업을 방해할 수 없습니다.
🔹 ② SJF는 작업이 끝나기까지의 실행시간 추정치가 가장 작은 작업을 먼저 실행시킨다.
- 맞는 설명입니다.
- SJF는 CPU 버스트 타임(Burst Time, 즉 실행 예상 시간)이 가장 짧은 프로세스를 먼저 실행합니다.
- 실제 실행 시간을 정확히 알 수는 없기 때문에 예측값을 기반으로 처리합니다.
🔹 ③ SRT는 실행 시간을 추적해야 하므로 오버헤드가 증가한다.
- 맞는 설명입니다.
- 현재 실행 중인 프로세스의 남은 실행 시간과 새로 도착한 프로세스의 실행 시간을 항상 비교해야 합니다.
- 선점 발생 시 **문맥 교환(Context Switch)**이 일어나므로 시스템 자원이 추가로 소모됩니다.
🔹 ❹ SRT에서는 이미 할당된 CPU를 다른 프로세스가 강제로 빼앗아 사용할 수 없다.
- ❌ 틀린 설명입니다. → 정답
- SRT는 선점형 기법이므로, 남은 실행 시간이 더 짧은 프로세스가 도착하면 현재 실행 중인 프로세스는 CPU를 빼앗깁니다.
- 즉, 다른 프로세스가 CPU를 강제로 빼앗아 사용할 수 있습니다.
'기출문제 > 정보처리기사' 카테고리의 다른 글
2019년 2회 정보처리기사 기출문제 58번 (0) | 2025.05.02 |
---|---|
2019년 2회 정보처리기사 기출문제 57번 (0) | 2025.05.02 |
2019년 2회 정보처리기사 기출문제 54번 (0) | 2025.05.01 |
2019년 2회 정보처리기사 기출문제 53번 (0) | 2025.05.01 |
2019년 2회 정보처리기사 기출문제 52번 (0) | 2025.05.01 |