微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – CFQ,截止日期和NOOP有什么区别?

我正在重新编译我的内核,我想选择一个I / O调度程序.这些有什么区别?

解决方法

如果全部编译它们,则可以在引导时或每个设备上选择要使用的调度程序.无需在编译时选择,除非您的目标是每个字节都重要的嵌入式设备.有关在引导时切换每个设备或系统范围的详细信息,请参阅Documentation / block / switching-sched.txt.

CFQ调度程序允许您通过ionice(1)工具或ioprio_set(2)系统调用设置优先级.这允许优先于某些进程或仅在系统的块设备相对空闲时强制其他进程执行其IO.队列由segregating the IO requests from processes into queues实现,并处理来自每个队列的请求,类似于cpu调度.有关配置的详细信息,请参见Documentation / block / cfq-iosched.txt.

相比之下,截止日期调度程序同时查看所有进程的所有写入;它按扇区号对写入进行排序,并以线性方式将它们全部写入.截止日期意味着它尝试在截止日期到期之前编写每个块,但在这些期限内,可以自由地重新排列块,因为它认为合适.有关配置的详细信息,请参阅Documentation / block / deadline-iosched.txt.

原文地址:https://www.jb51.cc/linux/394619.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐