Linux中为CFS定义的函数在哪里?

时间:2012-11-23 21:21:44

标签: c linux-kernel operating-system scheduling kernel

在完全公平调度程序(CFS)的sched_class中,为enqueue_task定义了函数原型。实际的功能实现在哪里定义?搜索给我一个定义here(下面)。但这是任务排队发生的地方吗?如果是,那么p->sched_class->enqueue_task

 713 static void enqueue_task(struct rq *rq, struct task_struct *p, int flags)
 714 {
 715        update_rq_clock(rq);
 716        sched_info_queued(p);
 717        p->sched_class->enqueue_task(rq, p, flags);
 718 }

1 个答案:

答案 0 :(得分:1)

它似乎已分配到kernel/sched/fair.c:5343sched_class结构,并定义为kernel/sched/fair.c:2178