RamMap 清空待机列表,但不会释放它们

RamMap 清空待机列表,但不会释放它们

我的问题是:当我使用 RamMap 清空一些备用内存时,它会被清空并清零,但释放的内存不会添加到释放内存计数器。相反,它继续贡献 RAM 的占用百分比,因为没用过

这里有一张截图来说明我的问题。这张图片是在“清空待命名单”订单后立即拍摄的。

在此处输入图片描述

我已经遭受过这种痛苦未使用内存现象由于 Razer Synapse 存在一些内存泄漏,据我所知,尽管它声称自己未被使用,但其他进程无法使用它。您如何让这些释放的内存完全可供其他进程使用?

答案1

一切看起来都很好。

有 2 个空闲内存列表。分别是空闲列表和空闲零列表。当内存首次空闲时,它会进入空闲列表,但这只是暂时的。内核有一个低优先级线程,它将空闲内存清零,然后将其放在空闲零列表中。通常空闲列表中的内存很少。

出于安全原因,内存被清零。进程不允许查看其他进程之前使用过的内存,除非先将其清除。因此,空闲零内存可立即分配给任何进程用于任何目的。空闲列表中的内存只能立即用于代码块,在进程查看之前,这些代码块将被覆盖。如果必须使用空闲列表中的内存,内核必须先将其清零,这需要时间。

相关内容