SCHED_OTHER와 SCHED_RR의 차이가 무엇인지요?
둘 다 RoundRobin인거 같긴한데..... 이 둘의 정확한 차이를 모르겠네요
시간을 분할해서 프로세스에 할당한다는 점에서는 유사합니다.
하지만, SCHED_RR/SCHED_FIFO가 SCHED_OTHER보다 높은 우선순위를 가집니다.
가령,.. 스케쥴링 정책이 SCHED_RR인 프로세스와 스케쥴링 정책이
SCHED_OTHER인 프로세스가 있다면, 우선 스케쥴링 정책이
SCHED_RR인 프로세스에 시간을 할당하고, 남는 시간을 쪼개서
SCHED_OTHER인 프로세스에 할당하는 것으로 알고 있습니다.
SCHED_OTHER: 일반적인 process/thread 의 정책.
SCHED_OTHER
: 일반적인 process/thread 의 정책. priority를 0만 가질 수 있음. timeshared.
SCHED_FIFO
: realtime을 위한 정책. priority 1~99. timeshared 아님. 오직 더 높은 priority를 가진 task에게만 선점됨. block, yield, terminate되기 전까지 계속 실행.
SCHED_RR
: realtime을 위한 정책. priority 1~99. 동일한 priority를 가진 waiting SCHED_RR task와 timeshared. timeshare할 대상이 없을 때 SCHED_FIFO와 동일하게 동작.
우리 모두 리얼리스트가 되자. 그러나 가슴에 이룰 수 없는 꿈을 가지자
[quote="khk700"]SCHED_OTHER와 SCHED_RR의 차
시간을 분할해서 프로세스에 할당한다는 점에서는 유사합니다.
하지만, SCHED_RR/SCHED_FIFO가 SCHED_OTHER보다 높은 우선순위를 가집니다.
가령,.. 스케쥴링 정책이 SCHED_RR인 프로세스와 스케쥴링 정책이
SCHED_OTHER인 프로세스가 있다면, 우선 스케쥴링 정책이
SCHED_RR인 프로세스에 시간을 할당하고, 남는 시간을 쪼개서
SCHED_OTHER인 프로세스에 할당하는 것으로 알고 있습니다.
어찌나 졸린지..~~
댓글 달기