我想测量 Windows 下进程执行的磁盘寻道次数。如果我打开任务管理器,我可以看到名为“I/O - 读取”的列。这是否相当于磁盘寻道?我是否可以得出这样的结论:如果进程在 7200 RPM 硬盘上执行 120 次磁盘寻道,那么它的容量利用率为 100%?
这与 ServerFault 相关,因为它使我能够估计我的应用程序在进入生产环境后在文件服务器上的负担有多重。
答案1
我将使用 perfmon(内置于 xp/2003 及更高版本,在运行框中输入 perfmon)。
创建新的计数器集并从 PhysicalDisk 性能对象中添加一些计数器。您可能对其中一些计数器感兴趣,例如每秒磁盘读取次数和每秒分割 i/o 次数。
我认为您追求的是磁盘读取/秒和磁盘写入/秒。然后,我会将它们与您的进程的进程对象中的 IO 读取/写入操作/秒进行比较。
答案2
您想要测量磁盘使用率的性能计数器是物理磁盘\%磁盘读取时间。没有专门测量单个寻道的计数器,也不会指示任何应用程序如何影响文件服务器,因为 Windows 抽象了磁盘。要更好地指示您的应用程序如何影响系统,请查看逻辑磁盘\平均磁盘读取队列长度,以获得应用程序的合理采样间隔,以及进程\页面错误/秒