linux下/proc/diskstats檔案詳解
技術標籤:Linux
每一列的含義分別為:
- 第一列為 裝置號
(number of issued reads. This is the total number of reads completed successfully.)
- 第二列為 次裝置號
(number of reads merged)
- 第三列為 裝置名稱
(number of sectors read. This is the total number of sectors read successfully.)
- 第四列為 成功完成讀的總次數
(number of milliseconds spent reading. This is the total number of milliseconds spent by all reads (as measured from __make_request() to end_that_request_last()).)
- 第五列為 合併讀次數,為了效率可能會合並相鄰的讀和寫,從而兩次4K的讀在它最終被處理到磁碟上之前可能會變成一次8K的讀,才被計數(和排隊),因此只有一次I/O操作。
(number of writes merged Reads and writes which are adjacent to each other may be merged for efficiency. Thus two 4K reads may become one 8K read before it is ultimately handed to the disk, and so it will be counted (and queued) as only one I/O. This field lets you know how often this was done.)
-
第六列為 讀扇區的次數
-
第七列為 讀花的時間(ms),這是所有讀操作所花費的毫秒數(用__make_request()到end_that_request_last()測量)
-
第八列到第十一列分別是寫
-
第十二列為 I/O的當前進度,只有這個域應該是0,如果這個值為0,同時write_complete read_complete io_processing 一直不變可能就就是IO hang了。
number of I/Os currently in progress. The only field that should go to zero. Incremented as requests are given to appropriate request_queue_t and decremented as they finish.)
- 第十三列為 輸入輸入花的時間(ms),花在I/O操作上的毫秒數,這個域會增長只要field 9不為0。
(number of milliseconds spent doing I/Os. This field is increased so long as field 9 is nonzero.)
- 第十四列為 輸入/輸出操作花費的加權毫秒數,
(number of milliseconds spent doing I/Os. This field is incremented at each I/O start, I/O completion, I/O merge, or read of these stats by the number of I/Os in progress (field 9) times the number of milliseconds spent doing I/O since the last update of this field. This can provide an easy measure of both I/O completion time and the backlog that may be accumulating.)
可以參考:
The /proc/diskstats file displays the I/O statistics of block devices. Each line contains the following 14 fields: 1 - major number 2 - minor mumber 3 - device name 4 - reads completed successfully 5 - reads merged 6 - sectors read 7 - time spent reading (ms) 8 - writes completed 9 - writes merged 10 - sectors written 11 - time spent writing (ms) 12 - I/Os currently in progress 13 - time spent doing I/Os (ms) 14 - weighted time spent doing I/Os (ms)
/sys/block/device_name/stat
的輸出和上面各個欄位是一樣的。