[玩转系统] Windows 中非分页池内存使用率较高(泄漏)
作者:精品下载站 日期:2024-12-14 23:08:35 浏览:13 分类:玩电脑
Windows 中非分页池内存使用率较高(泄漏)
Windows 计算机和服务器可能会遇到内存溢出问题,该问题是由于将数据存储在系统非分页内存池中的某个系统驱动程序泄漏而引起的。 非分页内存池是操作系统内核和驱动程序使用的计算机 RAM 中的数据。非分页池永远不会交换到磁盘(交换到分页文件),它始终仅存储在物理内存中。
您可以在任务管理器性能选项卡的内存部分中查看非分页内存的当前大小。下面的截图显示,服务器的几乎所有内存都处于繁忙状态,其中大部分被非分页池4.2GB占用。通常,非分页池的大小很少超过 200-400 MB。较大的非分页池大小通常表明某些系统组件或设备驱动程序中存在内存泄漏。
如果服务器上的非分页池中存在内存泄漏,系统事件日志中将出现以下事件:
活动ID:2019
来源:Srv
说明:
The server was unable to allocate from the system nonpaged pool because the pool was empty
大多数情况下,上述内存泄漏的原因是Windows中安装的第三方驱动程序存在一些问题。通常,这些是网络驱动程序。下载大文件时请注意池行为(很可能它会快速增长)。
Windows 上最大非分页池大小:
Windows x64 高达 128 Gb,且不超过物理内存的 75%
Windows x86 高达 2 Gb,RAM 不超过 75%
只有 Windows 重新启动有助于清理非分页池。对于家用设备来说这可能是可以接受的,但您应该为 24/7 工作的服务器找到更好的解决方案。
禁用网络数据使用监控驱动程序
很多时候,非分页池内存泄漏的原因是网络活动监控驱动程序不兼容(网络数据使用 - NDU,
%WinDir%\system32\drivers\Ndu.sys
)与网络适配器驱动程序。最常见的情况是 Killer Network 和 MSI 网卡驱动程序与 NDU 驱动程序发生冲突。可以禁用此服务,而不会造成 Windows 功能的太大损失。
使用以下命令停止 NDU 服务:
sc config NDU start= disabled
或者通过注册表:
-
打开注册表编辑器(regedit.exe);
转到注册表项HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Ndu\;
将开始参数的值更改为4。
进行更改后,您需要重新启动计算机。
使用 PoolMon 查找内核模式内存泄漏
您可以尝试找出导致非分页池内存泄漏的驱动程序。为此,我们需要 Windows 驱动程序工具包 (WDK) 中包含的 Poolmoon.exe 控制台工具。从 Microsoft 下载并安装适用于您的 Windows 版本的 WDK。然后启动 Poolmon.exe(对于 Windows 10 的 WDK,该工具位于
C:\Program Files (x86)\Windows Kits\Tools\
文件夹)。
启动该工具后,按P。第二列将显示使用非分页内存(Nonp 属性)的进程的标签。然后按B键按字节列对驱动程序列表进行排序。
左栏列出了驱动程序标签。您的任务是使用此标签识别驱动程序文件。在我们的示例中,您可以看到非分页池中的大部分 RAM 由带有标签 Nr22、ConT 和 smNp 的驱动程序使用。
您应该使用以下命令检查驱动程序是否找到标签
strings.exe
工具(来自 Sysinternals),使用内置
findstr
命令,或使用 PowerShell。
使用以下命令查找与您找到的标签关联的驱动程序文件:
findstr /m /l /s Nr22 %Systemroot%\System32\drivers\*.sys
findstr /m /l /s ConT %Systemroot%\System32\drivers\*.sys
findstr /m /l /s smNp %Systemroot%\System32\drivers\*.sys
或者,您也可以使用 PowerShell:
Set-Location "C:\Windows\System32\drivers"
Select-String -Path *.sys -Pattern "Nr22" -CaseSensitive | Select-Object FileName -Unique
Select-String -Path *.sys -Pattern "Py28" -CaseSensitive | Select-Object FileName -Unique
Select-String -Path *.sys -Pattern "Ne40" -CaseSensitive | Select-Object FileName -Unique
您可以直接在 poolmon.exe 中映射标签的驱动程序文件。为此,请确保 pooltag.txt 文件位于工具目录中。您可以从WDK安装目录复制pooltag.txt或从GitHub下载。按如下方式运行 poolmon:
poolmon /g
请注意,驱动程序名称现在显示在 Mapped_driver 列中。
这样我们就得到了可能导致问题的驱动程序文件列表。现在您必须通过名称来识别这些文件所引用的驱动程序和系统组件。为此,您可以使用 Sysinternals 的 sigcheck 工具。
sigcheck C:\Windows\System32\drivers\rdyboost.sys
该工具返回驱动程序或 Windows 组件的名称、描述和版本。
现在您可以尝试卸载/更新/重新安装有问题的驱动程序或服务。
如果内存泄漏导致 BSOD,您可以在内存转储文件中识别有问题的驱动程序。
将内存转储加载到 Windbg 调试器中;
运行命令:
!vm
如果NonPagedPoolUsage值大于NonPagedPoolMax,则表示非分页池已耗尽;
使用以下命令检查池的内容(结果将按非分页池使用情况排序):
!poolused 2
获取驱动程序标签后,使用以下命令查找驱动程序文件
findstr
或者
strings.exe
如上所述。
安装最新版本的网络适配器驱动程序
尝试从供应商的网站下载并安装网络适配器的最新驱动程序版本。
如果 Windows 中启用了自动驱动程序更新,请检查安装新驱动程序后是否出现问题。尝试回滚到以前的驱动程序版本,看看问题是否仍然存在。如果问题解决,请禁用自动驱动程序更新。
禁用 Hyper-V 角色
在某些情况下,安装的 Hyper-V 角色会导致非分页池发生内存泄漏。如果您不需要此角色,我们建议禁用它。
在 Windows Server 上,您可以使用 PowerShell 命令禁用 Hyper-V 角色:
Remove-WindowsFeature -Name Hyper-V
Windows 10 的命令:
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
如果您的搜索没有返回任何结果,请检查内存泄漏是否是由用户模式进程引起的。打开任务管理器,转到详细信息选项卡,添加NP池列,然后在非分页池中查找内存大小较大的进程。
本指南适用于 Windows Server 2019/2016/2012R 和桌面 Windows 10/8.1。
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag