分享

如何使用内存池监视器 (Poolmon.exe) 来解决内核模式内存泄漏

 instl 2014-12-05
Collapse image

简介

本文介绍如何使用内存池监视实用程序,Poolmon.exe,用作故障诊断工具来监视内存标签。

Poolmon 可显示操作系统将收集有关内存分配从系统分页和未分页的内核池和内存池用于终端服务会话有关的数据。数据分组按池分配标签。此信息可以通过 Microsoft 技术支持,用于查找内核模式内存泄漏。

内存泄漏是由应用程序或进程,用于分配内存,但,不会释放内存的应用程序或进程完成时引起的。因此,随着时间的推移完全使用可用内存。通常情况下,这种情况导致系统停止正常工作。

在这种情况下,以下事件可能会记录在系统日志中:

事件 ID: 2020年

源: Srv

说明: 服务器不能从系统页面缓冲池中分配,因为共享区当前是空。

事件 ID: 2019年

源: Srv

说明: 服务器不能分配未分页的系统从池,因为共享区当前是空。

回到顶端 | 提供反馈

Collapse image

更多信息

第一节介绍如何启用使用 Poolmon 标记模式。

启用标记模式在运行之前 PoolMon,必须启用池标记,然后重新启动您的计算机。

请注意

若要启用池上基于 Windows NT 4.0 的标记,基于 Windows 2000 或 Windows XP 的计算机上,使用下列方法之一:

方法 1: 编辑注册表若要更改注册表值,可用 Poolmon.exe 标记模式,请按照下列步骤。

重要

322756

() http://support.microsoft.com/kb/322756/如何备份和还原在 Windows 注册表

运行注册表编辑器。

在注册表中找到下面的项:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session 管理器

记下的值GlobalFlag,或保存

会话管理器

键。

双击右窗格中的GlobalFlag值。

将值更改为0x00000400十六进制。

请注意当您添加全局标志值 0x00000400 时,它只显示为后它将被添加在 0x400。务必要添加前导零的所有或某些 Poolmon 信息将不会显示在屏幕上输出。

重新启动计算机。请注意当您是完成调试、 更改回原始值,您的 GlobalFlag 值指示在步骤 3 中记下。

方法 2: 使用 Gflags.exe 实用程序此外可以使用全局标记编辑器 (Gflags.exe) 实用程序以启用池标记。Gflags.exe 是 Windows NT 4.0 资源工具包中和在 Windows 2000、 Windows XP 和 Windows 服务器 2003 Cd-rom 的 \Support\Tools 文件夹中可用。

请注意因为池标记永久启用了 Windows Server 2003 中,全局标志对话框中的启用池标记复选框将变灰,并且命令来启用或禁用池标记失败。

通过使用 Gflags.exe 进行更改,请执行以下步骤:

单击开始,单击运行,键入gflags.exe,,然后单击确定。

选择启用池标记。

单击应用,然后单击确定。

重新启动计算机。请注意

回到顶端 | 提供反馈

使用 Poolmon 收集信息Poolmon 可显示在命令窗口中的池标记信息。

Poolmon.exe 是 Windows NT 4.0 资源工具包中和在 Windows 2000、 Windows XP 和 Windows 服务器 2003 Cd-rom 的 \Support\Tools 文件夹中可用。

使用以下步骤来复制和存储标记信息。

单击开始,指向设置,单击控制面板,然后双击控制台。

请注意

单击开始,单击运行,键入cmd,然后单击确定。

用鼠标右键单击标题栏,然后单击属性。

单击选项选项卡,单击快速编辑模式,然后单击插入模式。

单击布局选项卡,将屏幕缓冲区大小值更改为99,然后单击确定。

单击开始,指向程序,然后单击命令提示符。

在 Windows NT 4.0 CD 的 Support\Debug\平台文件夹中找到 Poolmon.exe。

类型Poolmon.exe。

Poolmon 可显示"类型"的第二列,并显示分页值之前,请按 P。

按 B 进行排序的列从最大到最小。

选择整个屏幕内容,,然后按 enter 键。

单击开始,指向程序,指向附件,然后单击记事本。

在编辑菜单上,单击粘贴。

重复第 7 步以查找值分页。

重复步骤 8-11 粘贴。Poolmon.exe 也有几个命令键的排序您的输出。

P-排序标签列表分页,通过非分页的或混合。

B-按最大字节使用标记。

M-按最大字节分配标记。

T-按标记名称按字母顺序排序标记。

E-显示分页,跨下非页面缓冲的总数。

A-对标签排序分配大小。

F-按标记"释放"。

S-按标记分配的差异,并释放。

E-显示分页,跨下非页面缓冲的总数。循环。

Q-退出。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

298102

() http://support.microsoft.com/kb/298102/如何找到池标记所使用的第三方驱动程序

回到顶端 | 提供反馈

Collapse image

属性

文章编号: 177415 - 最后修改: 2014年3月3日 - 修订: 13.0

这篇文章中的信息适用于:

Microsoft Windows Server 2003, Enterprise x64 Edition

Microsoft Windows Server 2003 Datacenter Edition

Microsoft Windows Server 2003 Enterprise Edition

Microsoft Windows Server 2003 Standard Edition

Microsoft Windows Server 2003 Web Edition

Microsoft Windows XP Professional x64 Edition

Microsoft Windows XP Home Edition

Microsoft Windows XP Professional Edition

Microsoft Windows XP Media Center Edition 2005 Update Rollup 2

Microsoft Windows XP Tablet PC Edition

Microsoft Windows 2000 Server

Microsoft Windows 2000 Advanced Server

Microsoft Windows 2000 Professional Edition

Microsoft Windows NT Server 4.0 Standard Edition

Microsoft Windows NT Workstation 4.0 开发员版

Microsoft Windows Small Business Server 2003 Premium Edition

Microsoft Windows Small Business Server 2003 Standard Edition

关键字: 

kbhowto kbmt KB177415 KbMtzh

机器翻译

重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。

点击这里察看该文章的英文版: 177415

(http://support.microsoft.com/kb/177415/en-us/ )

Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多