728x90
스케쥴링
- 프로세스가 생성되서 실행될 때 필요한 시스템의 여러자원을 해당 프로세스에게 할당하는 작업을 의미함
- 프로세스가 생성되서 완료될 때까지 여러 스케쥴링이 실행됨
스케쥴링 기법 종류
- 비선점 스케쥴링 : CPU에 할당되어 실행되고 있는 프로세스를 우선순위와 상관없이 강제로 뺏지 않고 (뺏을수 없음) 사용하는 기법
- 선점 스케쥴링 : 하나의 프로세스가 CPU에 할당되어 실행되고 있는데 우선순위가 높은 다른 프로세스가 할당된 CPU를 빼앗아서 사용하는 기법
비선점 스케쥴링 특징
- 프로세스가 CPU를 할당 받으면 해당 프로세스가 완료될 때 까지 CPU를 사용
- 프로세스 응답시간 예측하기가 용이하면서 일괄 처리방식에 적합
- 우선순위가 높은 작업이 우선순위가 낮은 작업보다 더 늦게 처리되는 경우가 발생할 수 있음
- 대표적인 알고리즘으로 FCFS, SJF, 우선순위, HRN, 기한부 등이 있음
선점 스케쥴링 특징
- 우선순위가 높은 작업 즉 우선순위가 높은 프로세스를 빠르게 처리할 수 있음
- 주로 빠른 응답시간이 요구되는 시분할 시스템에 적합
- 많은 오버헤드를 초래할 수 있음
- 라운드로빈, SRT, 선점 우선순위, 다단계 큐, 다단계 피드백 큐 등의 알고리즘이 있음
인터럽트용 타이머클록
비선점 스케쥴링 같은 경우 선점이 가능하도록 일정시간 배당에 대한 인터럽트용 타이머 클록이 필요함
- 하나의 시스템 내에서 동작하는 장치들을 감시하기 위해 주기적인 신호를 발생하는 것으로, 하나의 프로세스가 자원을 독점하지 못하도록 방지하기 위해 사용
'OS' 카테고리의 다른 글
[OS] 가상메모리 (0) | 2021.12.26 |
---|---|
[OS] 캐시지역성 (0) | 2021.12.26 |
[OS] 스케쥴러 (0) | 2021.11.10 |
[OS] 메모리 관리 전략 (0) | 2021.11.08 |
[OS] Swap (0) | 2021.11.07 |