寻找内存泄漏时,我最近发现Process Explorer(Microsoft / Sysinternals v16.26的procexp.exe)报告的虚拟内存值非常高,大约为2.1TB,而我的笔记本电脑有32GB RAM运行Win 10Pro X64。例如,在此处,它报告Chrome.exe进程的虚拟内存大小为2,151,819,136 KB。有什么想法可能会引起这种情况吗?
感谢that-other-guy的提示。 Alex Ionescu在他的文章中(How Control Flow Guard Drastically Caused Windows 8.1 Address Space and Behavior Changes)解释了高熵ASLR(HEASLR)、自上而下的随机化和匿名内存随机化导致使用高虚拟地址,因此进程虚拟地址空间在2TB左右。 来自Alex文章的下图显示了所有使用/CFG构建的程序的虚拟内存大小为2TB: