| 용어 | 정의 |
|---|---|
| Turnaround Time (반환 시간) | 프로세스가 완전히 종료될 때까지 걸린 전체 시간 → 종료 시간 - 도착 시간 |
| Waiting Time (대기 시간) | 프로세스가 준비 상태에서 대기한 시간의 총합 → 반환 시간 - 실행 시간 |
| Response Time (응답 시간) | 처음으로 CPU를 할당받기까지 걸린 시간 → 첫 실행 시간 - 도착 시간 |
| Fairness (공정성) | 모든 프로세스가 동등하게 CPU 자원을 받는 정도 → 특정 프로세스가 지나치게 기다리지 않도록 하는 것 |
| 구분 | 선점형 스케줄링 (Preemptive) | 비선점형 스케줄링 (Non-Preemptive) |
|---|---|---|
| 정의 | 실행 중인 프로세스가 중간에 강제로 중단될 수 있음 | 한 번 CPU를 잡은 프로세스는 자발적으로 종료하거나 대기 상태가 되기 전까지 계속 실행 |
| 중단 가능 조건 | 더 높은 우선순위 프로세스 도착 시 / 타이머 만료 시 | 중단 불가, 오직 프로세스 본인이 CPU 반환 |
| 예시 알고리즘 | STCF(SRTF), Round Robin, MLFQ | FCFS, SJF(기본형) |
| 장점 | 반응 시간 우수, 사용자 체감 빠름 | Context switch가 적어 오버헤드 낮음 |
| 단점 | Context switch 많아 성능 저하 가능 | 긴 작업이 있으면 기아(Starvation) 발생 가능 |
| 적합한 환경 | 시분할 시스템 (사용자 인터랙션 많음) | 배치 시스템 (작업 완료가 목표인 환경) |