IO调度器
IO吞吐量和IO响应时间往往是矛盾的,为了尽量平衡这两者,IO调度器提供了多种调度算法来适应不同的IO请求场景。
- noop
什么都不做,请求来一个处理一个。 - CFQ(Completely Fair Queuing),绝对公平算法
试图为竞争块设备使用权的所有进程分配一个请求队列和一个时间片,在调度器分配给进程的时间片内,进程可以将其读写请求发送给底层块设备。 - DEADLINE
在CFQ的基础之上,解决了IO请求饿死的极端情况。除了CFQ本身具有的IO排序队列之外,DEADLINE额外分别为读IO和写IO提供了FIFO队列。这样的目的就是读写之间可以达到一个均衡。