Skip to content
阅读进度

如何理解CFS 与公平调度? ​

返回 性能与稳定性 目录

标准回答 ​

经典CFS通过虚拟运行时间衡量调度实体已经得到的CPU服务,按权重归一化实际运行时间。权重较大者在同样运行时间内的vruntime增长较慢,从而获得相应更大的CPU份额;可运行实体按相关时间顺序组织,调度倾向于选择需要补足服务的实体。

公平不等于每个线程每次都跑同样长,也不等于保证某个UI线程的最迟响应时间。多核负载均衡、组调度、优先级及其他调度类都会影响实际结果。

理解经典 CFS 后,还需要注意现代内核引入的 EEVDF。目标 Android 厂商内核可能有回移或定制,不能只凭 Android 版本断言使用哪一种实现。

追问与回答 ​

nice值越小意味着什么 ​

对普通调度任务通常意味着更高权重,而不是绝对实时优先级;实际效果还受组、核心限制和其他调度类影响。

参考资料 ​

内容来源 ​

用完整回答理解机制,用真实证据解释项目。