我在许多不同的 Windows 机器上,在许多不同的场合注意到这一点:任务管理器或资源监视器报告的 RAM 使用量似乎通常加起来显着低于实际使用量。
例如,很多次在我的笔记本电脑或台式机上,我看到使用了 7GB 之类的东西,但工作 RAM 集的总数更像是 3GB。我就是不知道它在哪里被使用!
这是我今天在服务器上的资源监视器中注意到的一个极端示例:
如果您右键单击图像并在新选项卡中打开并查看数字,您会注意到工作集(不包括非物理虚拟内存)加起来大约为 1.7GB。当启用“显示所有用户的进程”时,通过在任务管理器中添加 RAM 使用量,我得到了类似的数字。
现在这是任务管理器的性能选项卡的屏幕截图:
这表示 7.6GB 的物理内存正在使用中。
我一直在个人计算机、笔记本电脑和现在的服务器上看到这一点:系统工具报告的总 RAM 使用量仅占我观察到的 RAM 使用量的 1/4 左右。跆拳道要开始了???
对我所有的 RAM 在哪里有任何令人满意的解释吗?是什么吞噬了它,为什么它不留痕迹?
编辑:这是用户 whs 要求的图形 RAM 使用的图片:
编辑 2:为了回应 James 的回应,这里是 中非分页进程的图片poolmon.exe,按大小排序:

这些结果让我很困惑。poolmon正确说明我有 6GB 的非分页池正在使用,但所有非分页池进程的大小都小于 8MB。
这意味着什么?是否poolmon未能检测到使用非分页池的某些进程?
我正在使用 Windows 7 并有一个 4 核 Intel CPU,最近正在运行用 Wolfram Mathematica 编写的 4 内核并行计算,该计算访问包含数百万个文件的外部硬盘驱动器上的目录。我注意到并行计算的速度比预期的要慢,并隔离了由于 Security Essentials 进程“MsMpEng.exe”引起的问题;请参阅以下屏幕截图:

MathKernel 对象与 MsMpEng.exe 共享 CPU 资源,MsMpEng.exe 可能在计算过程中扫描 MathKernel 对象导入的文件。
这是不可接受的,并且还导致了一些其他不值得深入研究的资源复杂性,但可以说我想知道是否可以在运行计算时暂时禁用“MsMpEng.exe”,或者至少告诉它当另一个程序(在这种情况下,Mathematica)试图打开它们时,不扫描位于特定目录中的文件。
编辑:我重新启动并禁用了实时保护,到目前为止这个过程似乎已经消失了;如果它再次弹出并引起麻烦,我会稍后发布。
我在localhost:8080. 我想让它从外部访问,就像测试一样(现在忽略安全问题)。
要做到这一点,我配置我的路由器转发的外部端口8080到内部端口8080的192.168.0.101(这是我的机器的内部IP地址,如由IPv4的条目确定ipconfig /all)。
根据外部端口检查器,端口 8080 是开放的(外部 IP 被屏蔽):
但是,当我转到 时ExternalIp:8080,我无法连接。相比之下,InternalIp:8080工作正常。
鉴于端口似乎是开放的,但我无法从外部连接,是否有任何工具或方法可以诊断发生阻塞的位置?