hoon

Scheduling 본문

Operating Systems

Scheduling

hoon123 2021. 4. 10. 15:35

몇가지 가정

1. Each job runs for the same amount of time

2. All jobs arrive at the same time

3. Once started, each job runs to completion

4. All jobs only use the CPU (i.e., they perform no I/O)

5. The run-time of each job is known (!)
  • To make the scheduler omniscient, which is not likely to happen anytim

 

반환시간

Tturnaround=Tcompletion-Tarrival

 

FIFO(First In, Frist out) Scheduling

명확하고 단순함

But, 맨처음의 job이 너무 긴 시간을 할당받으면 뒤에 있는 job들이 밀림

 

SJF(Shortest Job First) Scheduling

실행시간이 짧은 job을 먼저 실행하겠다.

좋은 방법이지만 실제로 적용하기 위해 몇몇 가정을 바꿔서 생각해야함 

모든 job이 동시에 도착하는 것은 아님!

 

STCF(Shortest Time to Completion First) Scheduler

실행시간이 짧은 일을 먼저 완료시킴

작업의 길이를 미리 알고, 작업이 오직 CPU만 사용하고, 평가기준이 반환시간 하나라면 꽤 좋은 정책

 

응답시간 

Tresponse=Tfirstrun-Tarrival

 

RR(Round-Robin) Scheduling

time slice(scheduling quantum)에 따라 job을 실행

-time slice의 길이가 짧을수록 응답시간 측면에서 좋음

-너무 짧은 time slice는 성능적으로 문제가 생김 : 문맥교환의 비용때문

 

'Operating Systems' 카테고리의 다른 글

fork(), sched_setaffinity() 그리고 성능 측정에 관하여..  (0) 2021.03.18
Virtualization-process  (0) 2021.03.13
운영체제 개요  (0) 2021.03.06
Comments