Linux CFS算法如何实现公平?

发布于 2022-09-12 23:14:56 字数 371 浏览 41 评论 0

自己百度的文档中说O(1)算法进程优先级核可运行时间片进行了强映射,优先级高,时间片长。

而CFS抛弃了时间片轮转策略,再任意的调度周期内[公平]共享CPU时间。

但是,vruntime计算与进程权重有关,进程权重与优先级有关,优先级高,权重大,仍然获得了更多的CPU时间。

那么这里公平是怎么体现的呢?从结果来看,和O1算法一样都是高优先级先执行,且具有更长cpu执行时间。

还是说vruntime是动态实时计算的,一旦有其他vruntime的进程小于正在执行的进程,即使正在执行进程被分配的执行时间没有使用完,仍然会被低优先级进程抢占?

公平是指相对公平,按权重给予不同优先级进程不同时间,还是指绝对公平,不同优先级的进程平分相同时间。

谢谢指教!!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文