반응형

기본적으로 SJF 인데 비교 대상이 Burst Time 이 아니가 Priority 를 두어 이것을 기반으로

먼저 처리 할것을 선정하는 방식이다

 

이때 발생하는 문제가 실행시간이 짧은 프로세스가 있는데 우선순위가 먼저 처리되야 하는게 계속 들어오게 되면 실행되지 못하고 게속 대기해야 하는 기아(starvation) 이 발생하게 되는 문제가 있다

 

 

 

그래서 이 문제를 해결 하기 위해서 하는 방법은 프로세스에 aging 숫자를 도입해 오래 된 프로세스일 수록 우선순위를 높여주는 처리를 하여 이 문제를 막을 수 있다

 

 

 

 

좀더 나은 대안으로 RR 과 우선순위 기반의 스케줄링 두개를 섞어서 사용하는 방식도 있다

즉 우선순위를 먼저 처리하고 RR 로 돌아가면서 실행되도록

 

먼저 우선순위 높은걸 처리한다음 동일한 우선순위의 프로세스에 대해선 RR 로 처리한다

 

처음 P4 우선순위가 높기 때문에 P4 가 7초 동안 실행된 다음 P2, P3 우선순위가 같기 때문에 time quantum 즉 시간을 분할 하여 2초 마다 P2, 와 P3  환원큐 방식으로 돌아가면서 처리 되도록 하는 형태인걸 알수 있다

 

 

반응형

+ Recent posts