如何在Linux上显示当前磁盘IO队列长度?

我正在为Linux内核开发一个新的IO调度程序.我试图看看是否有人知道一个工具打印出Linux中未完成的IO请求(磁盘IO队列)的总数?

我会在一个终端工作.

谢谢!

最佳答案
在这里原谅这个巨大的死灵.你真的想要iostat -x,它将显示自上次运行iostat以来有问题的设备的扩展统计数据.如果您希望实时监控队列,您需要iostat -xt 1(或iostat -xmt 1以兆字节显示详细信息).

您可以在avgqu-sz列中查看平均队列大小.

请考虑以下来自iostat -xmt 1的示例输出,该输出显示完整的IO队列(此设备的最大队列长度为128)和基准测试期间的饱和磁盘.

18/05/15 00:41:05
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.00    0.00    0.00    6.02    0.00   93.98

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await  svctm  %util
xvda              0.00     0.00    1.00 1308.00     0.00   163.50   255.81   133.30  101.15   0.76 100.00

转载注明原文:如何在Linux上显示当前磁盘IO队列长度? - 代码日志