当计算机闲置几天时,Windows 10低虚拟内存(可能是内存泄漏)


3

我有一台运行Windows 10企业版的计算机,它具有8 GB RAM并自动管理页面文件大小(目前24 GB页面文件大小)。这台电脑正在运行:

  • 使用任务计划程序批处理
  • Windows 7的虚拟机,已分配1.5 GB RAM并运行自定义进程,使用VPN连接以编程方式从主机操作系统(Windows 10)发送文件

这台计算机全天候运行,其唯一目的是处理和发送这些文件。没有人使用它,有时我只是使用远程桌面访问它只是为了检查一些事情。

如果我将它闲置超过3天(平均时间),这台计算机就会“冻结”。冻结之后我可以ping它但是无法使用远程桌面访问它。我必须直接访问它,当发生这种情况时我唯一发现的是它显示一个白色的全屏,但我可以登录。登录后,虚拟机也没有响应,Windows事件查看器显示“Windows已成功诊断出低虚拟内存条件”。

我注意到如果我每天至少使用远程桌面登录一次,计算机可以运行没有这个问题,并且只有在我几天没有登录时才会出现问题。

我开始使用性能监视器分析这个问题,检查所有进程的Private Bytes计数器,发现系统进程内存使用量在我关闭远程桌面会话后开始增加,并且一直持续增加,直到我再次登录。

我离开性能监视器收集数据1天,然后我使用Remote Destkop登录第二天。该图表显示系统进程内存不断增加,就在我登录时(靠近图表末尾),它会减少:

PerfMonitor图

我想知道这是一个驱动程序内存泄漏,因为分配的页面文件大小足以容纳虚拟内存。


听起来像自定义进程有一个垃圾收集过程只能在用户登录时运行。你能提供有关自定义进程的更多详细信息吗?当用户登录时,内存泄漏不会自行修复。
Musselman

由于您的读数显示您始终在物理RAM上完整,因此我建议您将它放在您关注的位置,并为VM授予更多RAM。如果你经常深入研究磁盘分页,那么你真的需要更多。也不要忘记“内存泄漏”这个短语。内存泄漏是由特定编程失败引起的一种非常特殊的缺陷,它们是永久性的(没有人,但程序员可以修复它们)。进程私有字节可能增长的原因有很多,并且它们并非都是泄漏。
弗兰克托马斯


系统使用是一项新功能,可以将更多数据保存在RAM中。请参阅dup链接。
magicandre1981 2016年

Answers:


2

在没有运气(禁用Windows Defender和其他服务)的情况下尝试了几件事后,我在Windows事件查看器日志中发现每次出现白屏和低虚拟内存问题时,都会有一个事件日志显示显示器出现问题使Windows切换回基本显示驱动程序的驱动程序。

从设备管理器我使用回滚功能回滚显示驱动程序(Intel HD Graphics 4000),现在计算机正在使用基本显示驱动程序。在这样做之后,虚拟内存在1天内没有增加并且几乎保持恒定到10%(我每天增加约30%)。因此问题是显示驱动程序

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.