查看正在运行的进程中 I/O 的系统调用/内核活动

查看正在运行的进程中 I/O 的系统调用/内核活动

我希望能够查看进程的系统调用或内核活动...我实际上不确定这里需要的术语!具体来说,我正在寻找前往本地磁盘的 I/O 和前往 NFS 导出的 I/O 之间的区别。所以我想在本地运行例如 dd 并能够查看有关系统如何执行 I/O 的详细信息。我想了解系统读取和写入本地磁盘与网络位置的方式之间的差异 - SCSI 调用与 NFS 调用。

使用 dstat 这样的工具,我可以看到磁盘 I/O 与网络 I/O 的比较(并且可以看到明显的差异),但我无法看到实际发生情况的任何细节。我发现了很多其他统计工具,但我并不是真的在寻找统计数据。

我尝试过使用 strace,但看起来这还不够“深入”,因为 dd 对本地磁盘和 NFS 看起来相同。

我可以使用任何工具或设置来查看此级别的差异吗?这是一个用 CentOS 建立的个人实验室,所以我可以根据需要进行尽可能多的挖掘和破坏。

相关内容