Linux 2.6 内核包含4个IO调度器,分别是Noop IO scheduler、Anticipatory IO scheduler、Deadline IO scheduler 与 CFQ IO scheduler。


Noop IO scheduler 是一个简化的调度程序,它只作基本的合并与排序。

Anticipatory IO scheduler是目前内核中默认的IO调度器,它拥有非常好的性能,在Linux2.5内核中它就相当引人注意,在与Linux2.4内核(无该调度器)进行对比测试中,Linux2.4内核中多项以分钟为单位完成的任务,它则是以秒为单位来完成的,正因为如此它成为了目前Linux 2.6内核中的默认的IO调度器。Anticipatory IO scheduler的缺点是比较庞大与复杂,在一些特殊的情况下,特别是在数据吞吐量非常大的数据库系统中它会变得比较缓慢。

Deadline IO scheduler是针对Anticipatory IO scheduler的缺点进行改善而来的,表现出的性能几乎与Anticipatory IO scheduler一样好,但是比Anticipatory 要小巧。

CFQ IO schedule为系统内的所有任务分配相同的带宽,提供一个公平的工作环境,它比较适合桌面环境。事实上在测试中它也有不错的表现,mplayer、xmms等多媒体播放器与它配合的相当好,回放平滑,几乎没有因访问磁盘而出现的跳帧现象。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐