windows - Windows任务管理器中的峰值工作集是什么

标签 windows memory

我对 Windows 任务管理器内存概述感到困惑。 在一般内存概述中,它显示“正在使用”7.9GB(在我的示例中) windows task manager

我使用进程资源管理器来总结已用内存,它显示了以下内容: process monitor

由于这是最接近任务管理器 7.9GB 的数字,我猜这个值显示在那里。

现在我的问题是: 什么是峰值工作集

如果我将鼠标悬停在任务管理器中的列上,它会显示:

enter image description here

microsoft help表示进程使用的最大工作集内存量。

现在是所有进程的有效使用内存,还是所有进程曾经使用的最大内存?

最佳答案

您引用的数字是“进程、驱动程序和操作系统使用的内存”[source] .

这是一个简单但有些模糊的描述。有点类似的描述是未空闲的内存总量,或者缓冲区高速缓存的一部分,或者备用列表的一部分。

不是某个时间(“峰值”)使用的最大内存,巧合的是您的内存数量大致相同。它是当前使用的数量(由“每个人”使用,即所有程序和操作系统)。

峰值工作集是另一回事。工作集是一个进程(或者,如果考虑多个进程,则所有这些进程)中当前物理内存中的内存量。因此,峰值工作集是迄今为止看到的最大值。
进程可能会分配比它实际提交(“使用”)更多的内存,并且大多数进程一次会提交比其工作集中拥有的内存更多的内存。这是完全正常的。页面移入和移出工作集(以及移入备用列表),以确保只有有限内存量的计算机始终有足够的储备来满足任何内存需求。

关于windows - Windows任务管理器中的峰值工作集是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19637890/

相关文章:

ios - 以编程方式获取 iOS 应用程序中的内存使用情况 Live/Dirty Bytes(不是 Resident/Real Bytes)

C++ boost 库 - 正确处理日期序列内存分配错误

windows - 如何判断 Windows 内核事件对象是自动重置还是手动重置?

c - Linux 和 Windows 上的报警功能 -> 找不到 Windows 的等效功能 -> C

.net - Wix:将自定义操作中的文件复制到程序目录(Windows 7)

使用 goto 返回不同输出的代码

c++ - 为什么 valgrind 在内存泄漏检测期间被杀死?

r - ffdfdply,R 中的分割和内存限制

c++ - QProcess::startDetached() 但隐藏控制台窗口

windows - 要编写基于 64 位的软件,我必须使用 64 位 IDE 吗?