proc/diskstats 如何呈现该值? proc/stat 和 meminfo 呢?

How does the proc/diskstats work to present that values? And for proc/stat and meminfo?

我正在尝试通过与文件相同的方式获取磁盘统计数据。有没有办法在不读取该文件的情况下达到该值?值是如何放置在那里的?是否有任何“.c”文件处理数据以放置在 diskstats 上? proc/stat 和 meminfo 呢? (磁盘统计是我的主要关注点)

肯定有一个 .c 文件,它是 Linux 内核的一部分。如果你真的想看看它是如何完成的,你可以开始展开它,例如来自这里:http://lxr.free-electrons.com/source/block/genhd.c?v=3.8

从 procfs 读取并不是获取统计信息的最差方法,实际上这就是它的用途。但是,如果您愿意,可以尝试使用 iostat 实用程序(参见 http://linuxcommand.org/man_pages/iostat1.html