티스토리 뷰

스케줄링 기법

스케줄링 기법은 사용중인 프로세스에서 자원을 빼앗을 수 있는지의 여부에 따라 선점 스케줄링 기법과 비선점 스케줄링 기법이 있다.

 

ⓐ 선점(Preemptive) 기법 - RR, SRT, MFQ 등

하나의 프로세스가 CPU를 점유하고 있을 때 다른 프로세스가 프로세서를 빼앗을 수 있는 방법을 선점 스케줄링이라고 한다. 선점 스케줄링 방식은 프로세스의 우선 순위가 높은 프로세스가 CPU를 먼저 차지하기가 용이하기 때문에 실시간 시분할 시스템에서 사용한다.

- 우선 순위가 높은 프로세스가 먼저 수행되어야 할 때 유용하다.

- 빠른 응답 시간을 요구하는 대화식 시분할 시스템이나 처리 시간이 제한되어 있는 실시간 시스템에 유용하다.

- 많은 오버헤드를 초래한다.(컨텍스트 스윗칭)

 

ⓑ 비선점(Non-preemptive) 기법 - SJF, FIFO, HRN 등

프로세스에게 이미 할당된 CPU를 강제로 빼앗을 수 없고, 그 프로세스의 사용이 끝난 후에 스케줄링을 하여야 하는 방법을 비선점 스케줄링이라고 한다.

- 모든 프로세스들에 대한 요구를 공정히 처리한다.

- 응답 시간의 예측이 용이하다.

- 짧은 작업이 긴 작업을 기다리는 경우가 종종 발생한다.


스케쥴링 알고리즘의 목표


Batch Systems

처리율(시간당 시스템이 처리하는 작업의 개수)

Turnaround time - job을 submit한 후에 완료될때까지 걸린 시간

CPU 활용 - CPU를 항상 바쁘게 만드는것이 목표


Interactive Systems

반응 시간 - 빠르게


Real-time Systems

데드라인 만족 - 데이터 손실을 피하자



댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함