帮助我从Process Explorer了解这些内存统计信息

时间:2009-09-17 14:27:07

标签: windows memory-management process-explorer

我正在尝试对我的大额财务计算运行所需的内存量进行非常粗略的测量。它是一个非常简单的命令行工具,可以为大量金融工具定价,然后打印出结果。

我决定使用Process Explorer来查看程序的内存要求。有人可以解释屏幕截图中标记为a和b的两个字段之间的区别:

我目前相信:

标记为“a”(峰值专用字节数)的值是在任何瞬间分配给进程的最大内存量(磁盘上的实际物理内存和虚拟内存)。

标记为“b”(Peal Working Set)的值是在过程生命周期中的任何时刻分配的最大物理内存量。

alt text

2 个答案:

答案 0 :(得分:9)

来自here

  

工作集是进程中线程最近触及的内存页面集。如果计算机中的可用内存超过阈值,则页面将保留在进程的工作集中,即使它们未在使用中。当可用内存低于阈值时,将从工作集中剪裁页面。如果需要这些页面,它们将在离开主存储器之前软故障返回工作集。

     

[专用字节是]字节,此进程已分配,无法与其他进程共享。

在这种情况下,“峰值”的含义应该是显而易见的。

答案 1 :(得分:0)

来自观察的随机想法以及Process explorer的显示内容。 工作集在显示器的物理内存部分,所以任何人说这是虚拟内存是困惑的。并且它会改变奇数,因为RAM的使用通常会发生变化,因此看起来工作集就是物理内存。 另一方面,Private Bytes被列为虚拟内存。并且观察它的变化似乎改变了16K的倍数,因为虚拟内存通常会随着内存页面的切换而变化,而不仅仅是随机位。出于某种原因,我认为这应该是64 k页,但取决于我想的Windows机器和版本。