如果 Commit Charge 是物理内存和虚拟内存的总量;那么 Commit Charge 怎么会小于物理内存呢?
例如;我在进程资源管理器的系统信息中注册了 1.8GB 的提交空间,但 1.9GB 的物理空间。
答案1
来自维基百科:
“提交费用是 Microsoft Windows 操作系统中使用的术语,用于描述可分页虚拟地址空间的总量。”
“总计是正在使用的页面文件支持的虚拟地址空间量,即当前提交的费用。它由主内存 (RAM) 和磁盘 (页面文件) 组成。”
我认为您误入歧途的地方在于它不包括所有内存,只包括组成虚拟地址空间的内存。您没有说这 1.9GB 物理内存是全部还是可用,但有些内存没有分配给分页,例如操作系统和其他硬件。
这是我当前的 Process Explorer 屏幕截图(自从您上次提问以来,我更新了我的版本),我的 Commit Charge 限制为 6.2GB,但总内存和交换空间为 7GB。我当前的读数与您的类似:正在使用的 Commit Charge 为 2.4GB,总内存为 3.1GB。
答案2
简单:提交费用不是物理内存和虚拟内存的总和。
提交电荷是虚拟内存的量,其后备存储器是页面文件。这并不意味着所有提交电荷都在页面文件中。如果不能将全部提交电荷保存在 RAM 中,则“后备存储器”是将部分提交电荷保存在内存中的地方。
还有带有其他后备存储(映射文件)的虚拟内存。
犯罪限制是当前页面文件大小和 RAM 的总和(减去一点以容纳不可分页的内容)。
不要将页面文件视为“虚拟内存”,不管 Windows 的页面文件配置对话框是怎么说的。这样做会使你很难理解这些内容。页面文件就是页面文件。