none
搞不懂为啥msdn里没有wmi性能监视类计数器原始数据计算公式的说明 RRS feed

  • 问题

  • 简单的打个比方,我查阅到Win32_PerfRawData_PerfProc_Process这类里的PercentProcessorTime。个是用来计算进程cpu使用率的,我还查到这个属性计数类型(Counter Types)是PERF_100NSEC_TIMER,然后我就去查这个计数类型的计算公式,得到的是这个页面,http://technet.microsoft.com/en-us/library/cc728274(v=ws.10).aspx。公式居然是这个(N1 - N0) / (D1 - D0) x 100,我晕,谁告诉我N和D代表啥,他的那堆解释根本没说明N和D代表的是什么参数,我不死心继续在msdn里查PERF_100NSEC_TIMER这个计数器,结果查到这个页面,http://msdn.microsoft.com/en-us/library/ms938529.aspx。终于发现了公式了,但是这个居然是win ce的,为啥只有win ce没有windows的?
    2012年3月19日 9:19

答案

  • Hi 终于出名,

    欢迎来到C#论坛。

    在以下的帮助和支持页面有对该公式的详细解释:

    http://support.microsoft.com/kb/262938/en-us

    When the application calls the PdhCollectQueryData PDH function the first time, the PDH library collects X0 (the total time taken by the processor that is running the thread of the idle process) and Y0 (the time measured in Time base units). The second time the application calls PdhCollectQueryData, the previous sample becomes X0 and Y0, and the current call becomes X1 and Y1.

    祝你愉快。


    Bob Shen [MSFT]
    MSDN Community Support | Feedback to us

    2012年3月21日 7:14
    版主