Windows XP 似乎资源不足,但有足够的可用 RAM 和交换空间

Art*_*kii 12 memory windows

这个问题多年来一直困扰着我,到目前为止我找不到合适的解决方案。

这个问题几乎发生在我完成的每个 XP 安装中。打开各种程序或系统运行已有程序一段时间后,Windows似乎资源耗尽,没有告诉我。

总是免费的RAM。例如,它只是发生在我身上,而且我有超过一场演出的可用 RAM。没有病毒、间谍软件或其他废话——这是一个Windows 资源问题,但问题是它耗尽了哪个资源,如何查明它,以及如何防止它?

有时,这是在运行特定程序后发生的 - 例如,今天当我同时启动 Photoshop CS4 和 Flash CS4 时会发生这种情况。我还注意到重新启动 The Bat(Ritlabs 的电子邮件客户端)似乎暂时解决了这个问题,但同样,这种情况发生在甚至没有安装 The Bat 的机器上。

那么究竟发生了什么? 症状是:

  • 按 alt-tab 不再显示列表 - 它只是立即跳转到下一个窗口,与 Alt-Esc 的工作方式非常相似,但是在这种情况下,这是由于没有足够的资源来显示 alt-标签菜单

  • 随机程序会随机崩溃,引用随机错误、内存不足错误、系统资源、无法进行系统调用等。

  • 随机程序会开始丢失随机部分 - 例如,Firefox 顶部菜单可能会消失、拉出部分选择或完全不再拉出。IE 可能会丢失一些工具栏。某些程序可能无法重绘,或者只是在 UI 以前的位置变灰。

  • Windows 本身从不抱怨 RAM、虚拟内存或任何东西都用完了,但它却在用尽某些东西

我今天能够找到并应用修复程序的唯一线索是这个Desktop Heap Limitation。由于时间不够,我还没有确认修复工作。与此同时,大家的想法是什么?

Las*_*sen 12

可能是您正在运行的程序中的句柄泄漏。我的一个程序中存在一个错误,显示了这些问题,启动新程序时会出现工具栏丢失或不完整、文件->打开对话框未显示、alt-tabbing 无法正常工作以及奇怪的错误等问题。

在任务管理器中,您可以使用“视图”->“列”菜单来显示句柄以及用户和 gdi 对象的列,它们都使用句柄​​,如果您在那里发现一个数字很高的程序,它可能是罪魁祸首。

不幸的是,究竟什么是“高数”完全取决于程序。

尤其要注意句柄计数稳定增加的任何程序,因为这可能表明存在此类泄漏。


vav*_*ava 6

那是因为 Windows 有所谓的“桌面堆”,其中大多数 GUI 对象、菜单、图标以及您拥有的东西都在其中。这个空间非常有限,而且,更重要的是,大小是固定的。

请参阅Q126962:在桌面堆上寻求解决方案并阅读Raymond Chen以获取更多信息。


ned*_*edm 1

驱动程序以及其他在内核中或内核周围运行的东西,当它们不能正常工作时,可能会导致大问题——而且它是一个瓶颈,在明显的 CPU、内存或磁盘 I/O 中并不总是可见。路径。