프로세스 작업 수행을 위해 언제, 어느 프로세스에 CPU를 할당할 것인지 결정하는 작업
기법 종류
- 스케줄러 동작 시점, Time Slice, 프로세스 생성/소멸 시, 프로세스 Block 상태 변경 시
- 스케줄러가 운영체제에 많이 관여-선점, 적게 관여-비선점
SJF (Shortest Job First), SRT (Shortest Remaining Time)
SJF (Shortest Job First)
- 비선점 방식 (non - preemptive)
- 대기 작업 중 수행 시간이 짧게 판정된 작업 수행
- 짧은 작업 먼저 수행이 오버헤드 측면에서 유리
문제점)
- 작업 수행 시간을 사전에 정확히 판정 어려움
SRT (Shortest Remaining Time)
- 선점 방식 (preemptive)
- SJF 기법에 선점방식을 도입/변형 방식
- 실행 중 작업이라도 처리 시간이 더 짧은 작업이 생기면 선점
문제점)
- 긴 작업에 대한 실행 시간 추적 보유 (오버헤드)
- 긴 작업은 SJF 보다 대기 시간 오래 소요
SJF와 SRT의 평균 대기시간 및 평균 반환시간
SJF 기법 계산
SRT 기법 계산
- 대기시간: 작업이 대기 큐에서 대기한 시간, 반환시간: 작업이 제출된(도착) 시간부터 완료까지 시간
- 프로세스 자원 점유 변경 시 문맥 교환이 일어나므로 빈번한 자원 점유 변경 시 오버헤드 증가에 따른 성능 감소
https://blog.skby.net/cpu-%EC%8A%A4%EC%BC%80%EC%A4%84%EB%A7%81/
'CS > OS & 하드웨어' 카테고리의 다른 글
동적테스트 화이트박스 테스트 검증기준 (WhiteBox Test Coverage) (0) | 2024.10.21 |
---|---|
CPU 스케줄링 (Scheduling) 개념 (1) | 2024.09.24 |
논리게이트의 종류(AND, OR, NOT, NAND, NOR, XOR, XNOR) (0) | 2024.09.24 |
결합도(Coupling)과 응집도(Cohesion) 순서 (0) | 2024.09.22 |
Virtual Machine (가상 머신이란?) (0) | 2024.09.19 |