Dun*_*ken 3 memory windows virtual-memory process-explorer
我的系统在提交的内存上运行很高(在 8GB RAM + 2 GB 页面文件中 85% 的内存已提交)。物理使用率约为 65%。
如何确定哪个进程正在分配大部分已提交的内存?我知道内存可以在进程之间共享。到目前为止,我已经使用 VMMap 来显示已提交的内存,但这是基于每个进程的,并且不考虑页面文件支持的部分。
1.获取使用最多虚拟内存的前 10 个进程
Get-Process | Sort PagedMemorySize-Desc | Select Name, PagedMemorySize, VirtualMemorySize -First 10
Run Code Online (Sandbox Code Playgroud)
输出示例
Name VirtualMemorySize PagedMemorySize
---- ----------------- ---------------
UrBackupClientBackend 685735936 548347904
explorer 1529909248 478908416
Microsoft.Photos 1303465984 433094656
MBAMService 661987328 228876288
MicrosoftEdgeCP 894496768 219799552
MsMpEng 667783168 205774848
MicrosoftEdgeCP 874590208 202584064
mstsc 440627200 185860096
javaw 886177792 185556992
MicrosoftEdgeCP 802746368 146792448
Run Code Online (Sandbox Code Playgroud)
2.获取所有提交的虚拟内存的总和
Get-WmiObject win32_operatingsystem | Select @{L='commit';E={($_.totalvirtualmemorysize - $_.freevirtualmemory)*1KB/1GB}}
Run Code Online (Sandbox Code Playgroud)
输出示例
commit
------
4.56205749511719
Run Code Online (Sandbox Code Playgroud)
“关联进程请求的虚拟内存量,以字节为单位。”
总虚拟内存大小
数据类型:
uint64访问类型:
Read-only预选赛:
Units ("kilobytes")虚拟内存的数量(以千字节为单位)。例如,这可以通过将总 RAM 量添加到分页空间量来计算,即将计算机系统中的或由计算机系统聚合的内存量添加到属性SizeStoredInPagingFiles。
“获取为关联进程分配的分页内存量(以字节为单位)。”
“由关联进程分配的可写入虚拟内存分页文件的内存量(以字节为单位)。”
Process Explorer 可以显示每个进程的此信息:
以下是如何在 Process Explorer 中获取上述屏幕:
Process Hacker 可以类似地显示此信息,在选择并双击进程后,在“句柄”选项卡中取消选中“隐藏未命名句柄”。
| 归档时间: |
|
| 查看次数: |
9391 次 |
| 最近记录: |