加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – 一个简单的程序可以负责BSOD吗?

发布时间:2020-12-13 23:20:57 所属栏目:Windows 来源:网络整理
导读:我有一个客户告诉我,我的程序(简单的用户登陆程序,而不是驱动程序)正在使用蓝屏死机(BSOD)来破坏他的系统.他说他从未在其他程序中遇到过这种情况,而且他可以轻松地用我的程序重现它. BSOD的类型为CRITICAL_OBJECT_TERMINATION(0x000000F4),对象类型为0x3(进
我有一个客户告诉我,我的程序(简单的用户登陆程序,而不是驱动程序)正在使用蓝屏死机(BSOD)来破坏他的系统.他说他从未在其他程序中遇到过这种情况,而且他可以轻松地用我的程序重现它.

BSOD的类型为CRITICAL_OBJECT_TERMINATION(0x000000F4),对象类型为0x3(进程):对系统操作至关重要的进程或线程意外退出或终止.

一个简单的程序可以负责BSOD(即使在Vista上……)还是应该检查硬件或操作系统安装?

使用用户空间程序导致BSOD的最简单方法是(afaik)到 kill the Windows subsystem process(csrss.exe).这不需要有缺陷的硬件,也不需要内核或驱动程序中的错误,它只需要管理员权限1.

你的代码到底在做什么?错误消息(“对系统操作至关重要的进程或线程意外退出或终止.”)听起来像是一个必要的系统进程终止.也许你正在杀死一个进程并无意中得到了错误的进程?

如果可能的话,你可以尝试从该客户那里获得内存转储.使用Windows调试工具,您可以进一步分析该转储,如here所述.

1Windows不会阻止你从doing so因为它“keeps administrators in control of their computer”.所以这是设计而不是错误.阅读雷蒙德的文章,你会明白为什么.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读