虫趣:空指针引用(SYSTEM_SERVICE_EXCEPTION)

作者:张佩】【原文: http://www.yiiyee.cn/Blog/bsod-0x3b-1/

这是一个BSOD 0x3B的dump文件,BSOD 0x3B所代表错误的描述是:SYSTEM_SERVICE_EXCEPTION,表示在一个系统线程里面发生了不可解决的系统异常,导致的系统错误。

系统线程是一个笼统的概念,凡是通过内核函数IoCreateSystemThread创建的线程,都是系统线程。内核是一个混沌的整体,内核里面不存在进程的概念。但是它却需要分配一些独立执行的任务,线程是执行这些独立任务的最佳载体。但是线程必须依附在进程中。为了解决这种矛盾,系统专门创建了一个SYSTEM进程,这个进程没有用户模式的代码,专门作为内核线程的载体存在。系统为SYTEM进程分配固定的进程号4。在Windbg内核调试会话中运行命令!process 4将列印SYSTEM进程信息:

0: kd> !process 4 0
Searching for Process with Cid == 4
Cid handle table at fffff8a000004e80 with 754 entries in use

PROCESS fffffa8003699040
    SessionId: none  Cid: 0004    Peb: 00000000  ParentCid: 0000
    DirBase: 00187000  ObjectTable: fffff8a0000019b0  HandleCount: 1559.
    Image: System

继续阅读“虫趣:空指针引用(SYSTEM_SERVICE_EXCEPTION)”

6,879 total views, 3 views today