我有一台16 GB的
Windows Server 2008 x64机器,主要运行sql Server 2008.在任务管理器中看到的可用内存非常低(目前为128 MB),即使用大约15.7 GB.到现在为止还挺好.
原文链接:https://www.f2er.com/windows/367850.html现在,当我尝试使用大多数内存缩小进程时,我感到困惑:任务管理器的“进程”选项卡中显示的进程都没有超过200MB的工作集大小.那么,也许工作集大小不是相关的计数器?
为了解决这个问题,我使用了一个PowerShell命令[1]来总结过程对象的每个单独的属性,而不是蛮力方法 – 当然其中一个必须加起来为15.7 GB,对吧?原来没有一个,最接近的是VirtualMemorySize(大约12.7 GB)和PeakVirtualMemorySize(大约14.7 GB). WTF?
换句话说:大量与内存相关的过程信息中的哪一个是“正确”过程信息,即计入任务管理器“性能”选项卡中显示的服务器物理内存?
谢谢你们!
[1] $erroractionpreference =“silentntlycontinue”; get-process | gm | where-object {$.membertype -eq“Property”} | foreach-object {$.name; (get-process | measure-object -sum $_.name).sum / 1MB}