The SYSTEM_THREAD_EXCEPTION_NOT_HANDLED BSOD error occurs when the system calls the following function, PsCreateSystemThread(); – here is the description from the Windows Driver Development Kit (WDDK):
“The PsCreateSystemThread routine creates a system thread that executes in kernel mode and returns a handle for the thread.”
If you experienced such BSOD in Windows 8 Developer Preview, then this can be one of the causes, and this because it occurs in Kernel Mode (KMODE). However, according to Microsoft there is a KMODE bug check as well,
the KMODE_EXCEPTION_NOT_HANDLED bug check has a value of 0x0000001E.
This indicates that a kernel-mode program generated an exception which the error handler did not catch.
The PspUnhandledExceptionInSystemThread is a pointer to a structure, which contains pointers to an exception statement, here is its C/C++ struct code:
typedef struct _EXCEPTION_POINTERS {
PEXCEPTION_RECORD ExceptionRecord;
PCONTEXT ContextRecord;
} EXCEPTION_POINTERS, *PEXCEPTION_POINTERS;
ULONG PspUnhandledExceptionInSystemThread(IN PEXCEPTION_POINTERS ExceptionPointers)
Further code analysis show that the functionality might look like this in code:
ExceptionPointers->ExceptionRecord->ExceptionCode,
ExceptionPointers->ExceptionRecord->ExceptionAddress,
ExceptionPointers->ExceptionRecord->ExceptionInformation[0],
For additional information see:
Bug Check 0x7E: SYSTEM_THREAD_EXCEPTION_NOT_HANDLED
PsCreateSystemThread routine
Bug Check 0x1E: KMODE_EXCEPTION_NOT_HANDLED
k, kb, kc, kd, kp, kP, kv (Display Stack Backtrace)

1,602 views