io-scheduler · shipping · also Linux I/O scheduler, block I/O scheduler

I/O scheduler

An I/O scheduler is a host block-layer policy that selects or regulates pending request dispatch to a storage device.

Related Observatory article: I/O scheduler on hesela.com

Selection: Linux exposes the available choices and brackets the active one in /sys/block/<device>/queue/scheduler. The iosched directory holds scheduler-specific settings. The choice applies to a device queue, not to every drive in a system. [1]

The none selection removes the elevator policy, not the block layer or the device's own scheduling. [2] The block layer does not guarantee completion order. [4]

A scheduler setting does not replace the write-cache flush and FUA mechanisms needed for persistence. [3]

Relations

related
Linux blk-mq, mq-deadline, Budget Fair Queueing (BFQ), Kyber I/O scheduler, Queue depth, Storage cache flush

Citations

  1. Linux 6.16: Switching Scheduler (accessed 2026-10-21)
  2. Linux v6.16: elevator.c, elevator_switch and the none selection (accessed 2026-10-21)
  3. Linux 6.16: Explicit volatile write back cache control (accessed 2026-10-21)
  4. Linux 6.16: Multi-Queue Block IO Queueing Mechanism (accessed 2026-10-21)

Further reading

  1. Hesela: Sharing an SSD: who pays for the slowdown? (accessed 2026-10-21)

JSON: /data/terms/io-scheduler.json

Published by Hesela team · Updated

Report a correction · Editorial standards · Reuse guidance

Cite this page
Hesela team. I/O scheduler. Hesela. 2026-10-21. https://hesela.dev/terms/io-scheduler/