자격증/정보처리기사
선점형(Preemptive) vs 비선점형(Non-Preemptive) 스케줄링 완전 정리
키성열
2025. 4. 28. 21:18
반응형
선점형(Preemptive) vs 비선점형(Non-Preemptive) 스케줄링 완전 정리
🔷 선점형 스케줄링(Preemptive Scheduling)
✅ 선점형 스케줄링이란?
선점형 스케줄링은 운영체제가 CPU를 사용 중인 프로세스에게서강제로 CPU를 회수하여 다른 프로세스에 할당할 수 있는 방식입니다.
- 현재 프로세스가 실행 중이라도,
- 더 높은 우선순위 프로세스가 등장하거나,
- 타임 퀀텀이 만료되면,
운영체제는 CPU를 선점할 수 있습니다.
이 과정을 선점(Preemption)이라고 부릅니다.
✅ 선점형 스케줄링의 등장 배경
시스템이 복잡해지면서 사용자 입력, 네트워크 요청, 긴급 시스템 작업 등즉각적인 반응이 필요한 상황이 증가하였습니다.
이에 따라 운영체제가 프로세스를 중간에 끊고
긴급 작업을 즉시 처리할 수 있는 기능이 필요해졌습니다.
✅ 선점형 스케줄링의 작동 방식
- 프로세스가 CPU 사용 중에도
- 우선순위 높은 프로세스 등장 or 타임 퀀텀 만료 시
- 운영체제가 CPU를 강제로 회수하여 다른 프로세스에 할당
✅ 선점형 스케줄링의 대표 알고리즘
- Round Robin (RR)
- Preemptive Priority Scheduling
- Shortest Remaining Time First (SRTF)
✅ 선점형 스케줄링의 장점과 단점
반응형
🔷 비선점형 스케줄링(Non-Preemptive Scheduling)
✅ 비선점형 스케줄링이란?
비선점형 스케줄링은 운영체제가 CPU를 할당한 이후,프로세스가 작업을 완료하거나 자발적으로 반납할 때까지
CPU 점유를 유지하는 방식입니다.
운영체제는 중간에 CPU를 빼앗지 않습니다.
✅ 비선점형 스케줄링의 등장 배경
초기 컴퓨터에서는 시스템 설계가 단순해야 했고,중간 작업 끊기 복잡성도 부담이 컸습니다.
따라서 한번 CPU를 받은 프로세스는 끝까지 실행하도록 하는 방식이 선호되었습니다.
✅ 비선점형 스케줄링의 작동 방식
- 프로세스가 CPU를 얻으면
- 자발적으로 작업 완료 또는 입출력 대기 발생 전까지
- 운영체제는 CPU를 회수하지 않음
✅ 비선점형 스케줄링의 대표 알고리즘
- First Come First Served (FCFS)
- Non-preemptive Shortest Job First (SJF)
- Non-preemptive Priority Scheduling
✅ 비선점형 스케줄링의 장점과 단점
반응형
🔷 선점형 vs 비선점형 스케줄링 비교
🔷 직관적 예시로 이해하기
- 선점형 예시: 버스 탔는데 응급환자가 오면 일반 승객을 내리게 하고 응급환자 먼저 태움
- 비선점형 예시: 버스에 탔으면 누구도 끌어내지 않고 목적지까지 그대로 감
🔷 마무리 정리
- 선점형 스케줄링은 실시간성, 빠른 반응성이 필요한 시스템에 적합합니다.- 비선점형 스케줄링은 단순성과 안정성이 필요한 시스템에 적합합니다.
운영체제는 시스템 환경에 따라 두 방식을 조합하여 최적의 성능과 안정성을 달성하고 있습니다.
반응형