1

我正在尝试使用 PowerShell 获取 Windows 2012 服务器系统上的缓存字节总数,微软的该指标文档似乎存在一些矛盾。

根据这个网站

Memory\Cache Bytes 性能计数器是 Memory\System Cache Resident Bytes、Memory\System Driver Resident Bytes、Memory\System Code Resident Bytes 和 Memory\Pool Paged Resident Bytes 计数器的总和。

但是,当我查询以下 PowerShell cmdlet 时,会得到不同的结果。

get-counter -counter "\Memory\Cache Bytes"

返回大约 50 MB,而

(get-counter -counter "\Memory\System Cache Resident Bytes").CounterSamples[0].CookedValue +
(get-counter -counter "\Memory\System Driver Resident Bytes").CounterSamples[0].CookedValue + 
(get-counter -counter "\Memory\System Code Resident Bytes").CounterSamples[0].CookedValue + 
(get-counter -counter "\Memory\Pool Paged Resident Bytes").CounterSamples[0].CookedValue

返回大约 201 MB。

我还使用任务管理器中的缓存值检查了这些值,显示的值约为 500 MB。

有人对哪个值是正确的有任何想法吗?

谢谢!

4

0 回答 0