开机没多久就蓝屏,终止代码一行写着 ATTEMPTED_EXECUTE_OF_NOEXECUTE_MEMORY,下面跟着 0x000000FC。重启能进系统,跑一会儿又蓝,换过内存条也没用。
这个代码在说什么
DEP 会把标记为数据的内存页设成不可执行,CPU 一旦跳进去执行指令,系统立刻蓝屏保护。触发者通常是驱动,尤其是老显卡驱动、网卡驱动、还有带内核钩子的安全软件。
先定位是哪个驱动
蓝屏时记下底部那个 .sys 文件名,比如 nvlddmkm.sys、rtwlane.sys。没有文件名就翻系统盘 Windows 目录下 Minidump 文件夹里的 dmp,用 WinDbg 打开执行 !analyze -v,看 MODULE_NAME 那一行。没装调试工具也可以先用 BlueScreenView 看个大概。
处理顺序
- 进安全模式,卸载最近安装的驱动和杀软
- 显卡驱动用官方版本,别用第三方驱动包一键装
- 关闭 CPU 和内存超频,XMP 先关掉试试
- 跑一遍 Windows 内存诊断,两条内存先插一条
有人教你直接把 DEP 关掉换安静,这等于把报警器拆了,真遇到恶意代码照样中招,不建议。
更新也可能背锅
刚打完补丁就出现这个蓝屏,可以在更新历史里卸载最近的质量更新,观察一天。企业批量机器建议先在一台上验证,别整批推。
用驱动验证器把可疑模块逼出来
系统自带 verifier.exe,管理员命令行输入 verifier /standard /all,重启后它会强制检查第三方驱动的内存访问,哪个越界就当场蓝屏并指出文件名。抓到之后进 verifier /reset 关掉,别长期开着,机器会明显变慢。只怀疑显卡的话走「从列表中选择驱动程序」,把 nvlddmkm 这类勾上就行。
事件查看器→Windows 日志→系统里,蓝屏会留一条来源 BugCheck、事件 ID 1001 的记录,参数一栏写着尝试执行的地址,和 dump 里的对得上。往前翻几天的记录,能看出第一次崩溃是不是紧跟某次驱动或补丁安装。
这代码指向的是内存执行权限冲突,不是硬盘坏了,按驱动、超频、内存的顺序查,命中率最高。