这是典型的内核内存资源枯竭问题,需先通过driverquery验证PTE耗尽实锤,再禁用SMB缓存、卸载备份软件,最后对16GB+内存设备谨慎调整SystemPageTablePages注册表值。

这是典型的内核内存资源枯竭问题,不是硬件损坏,但必须立刻干预,否则每次重启都可能重演。
确认确实是PTE耗尽而非其他故障
蓝屏代码 0x0000003F(NO_MORE_SYSTEM_PTES)表面是“没页表条目了”,但得先排除误判。不能一上来就改注册表或卸驱动。
- 强制三次关机进 WinRE → “疑难解答”→“高级选项”→“命令提示符”
- 运行
ver确认系统版本是 Windows 11 22H2 或更新(旧版本对 PTE 管理更脆弱) - 执行
driverquery /v | findstr /i "nvlddmkm\|mrxsmb\|rdbss\|netbt",重点看输出里是否高频出现ntkrpamp!MmMapLockedPages或mrxsmb!SmbMmAllocateSessionEntry—— 出现即实锤是 PTE 分配失败 - 如果没这些调用链,而是大量
dxgkrnl、dxgmms2或第三方驱动名,优先查显卡/备份软件
禁用 SMB 客户端缓存(最快速见效的步骤)
Windows 自带的 SMB 驱动(mrxsmb)在访问网络共享时会持续申请大块 PTE,尤其当启用了目录缓存后,极易堆积泄漏。这个动作几乎零风险,且无需重启即可验证效果。
- 以管理员身份打开 PowerShell
- 运行:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" -Name "DirectoryCacheEntries" -Value 0 -Type DWord - 再运行:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" -Name "FileNotFoundCacheEntries" -Value 0 -Type DWord - 重启电脑 —— 多数情况下蓝屏频率会显著下降甚至消失
卸载近期安装的备份/同步工具
Acronis True Image、EaseUS Todo Backup、GoodSync、Syncthing(服务模式)、甚至某些 NAS 厂商的 PC 端工具,都会在后台长期锁定数百 MB 到数 GB 内存,并反复调用 MmMapLockedPages,直接吃光 PTE 池。它们常伪装成“已退出”,实际仍在服务中运行。
- 打开“控制面板→程序和功能”,按“安装日期”排序
- 卸载过去 7 天内装过的任何备份、同步、镜像类软件
- 特别注意那些带“service”、“agent”、“background”字样的进程(可用
services.msc查看) - 卸载后务必重启,不要只结束进程 —— 服务残留仍会触发分配请求
调整 SystemPageTablePages 注册表值(仅限 16GB+ 内存设备)
这个值不是越大越好,设错反而引发新问题。它只对物理内存 ≥16GB 的设备有效;8GB 机器设了也没用,系统会忽略。
- 管理员权限打开注册表编辑器,定位到:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management - 新建一个
DWORD (32-bit)值,名称为SystemPageTablePages - 双击修改,数值数据填
16384(必须是十进制,不是十六进制;网上有些教程写 0x4000 是错的) - 重启生效 —— 若重启后仍蓝屏,说明驱动层存在硬编码 PTE 需求(比如某版 NVIDIA 驱动),此时必须回退显卡驱动
真正麻烦的点在于:PTE 耗尽往往由多个模块叠加导致,单改注册表只是兜底,不解决源头。最容易被忽略的是 SMB 缓存 + 备份软件共存 —— 两者各自不超标,合起来就爆掉。动手前务必先做 driverquery 验证,别靠猜。



















