0

Completely Fair Scheduler(CFS)のsched_classには、に対して定義された関数プロトタイプがありますenqueue_task。実際の関数の実装はどこで定義されていますか?検索すると、ここ(以下)で定義がわかりました。しかし、それはタスクのエンキューが発生する場所ですか?もしそうなら、どこにありますか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 }
4

1 に答える 1

1

これは、 kernel / sched / fair.c:5343sched_classの構造体に割り当てられ、kernel / sched / fair.c:2178で定義されているようです。

于 2012-11-23T21:36:52.043 に答える