为什么Linux CFS调度器没有带来惊艳的碾压效果?( 七 )

staticinlineunsignedinttask_timeslice(task_t*p)

{

returnBASE_TIMESLICE(p);

}

直观点显示:

为什么Linux CFS调度器没有带来惊艳的碾压效果?

图3/6

针对上述问题,2.6内核的O(1)O(1)引入了双斜率来解决:

staticunsignedinttask_timeslice(task_t*p)

{

if(p->static_prio

returnSCALE_PRIO(DEF_TIMESLICE*4, p->static_prio);

else

returnSCALE_PRIO(DEF_TIMESLICE, p->static_prio);

}

直观图示如下:

推荐阅读