【发布时间】:2021-12-04 08:35:15
【问题描述】:
This post 很好地总结了如何在每个任务的基础上完成调度,但并没有真正涉及任务组在 RB 树上的排序方式。
我也找不到其他相关资源;他们都说了类似的话:
只要当前调度实体是 CFS RQ(最左边节点具有最小 vruntime 的 RB 树),
pick_next_task_fair()函数就会一直选择最左边的调度实体。
但是 CFS 究竟如何在 RB 树上优先于一个任务组优先于另一个任务组?是根据里面任务的min_vruntime来做的吗?它是根据分配给该任务组的 CPU 份额完成的吗?
对此的任何见解将不胜感激!提前致谢!
【问题讨论】:
标签: linux-kernel scheduler cgroups