csrss.exe过程是做什么的?

Windows上的csrss.exe(客户端/服务器运行时服务器子系统)的用途是什么?

也许有人可以给出一个很好的解释或指向文档? 不幸的是,当searchWindows的核心进程时,Google的search结果相当嘈杂。

我问的原因是我从我的服务应用程序,似乎是与csrss.exe进程相关的BSOD,至less这是内存转储的分析显示:

PROCESS_OBJECT: 85eeeb70 IMAGE_NAME: csrss.exe DEBUG_FLR_IMAGE_TIMESTAMP: 0 MODULE_NAME: csrss FAULTING_MODULE: 00000000 PROCESS_NAME: PreviewService. BUGCHECK_STR: 0xF4_PreviewService. DEFAULT_BUCKET_ID: DRIVER_FAULT CURRENT_IRQL: 0 LAST_CONTROL_TRANSFER: from 80998221 to 80876b40 STACK_TEXT: f5175d00 80998221 000000f4 00000003 85eeeb70 nt!KeBugCheckEx+0x1b f5175d24 8095b1be 8095b1fa 85eeeb70 85eeecd4 nt!PspCatchCriticalBreak+0x75 f5175d54 8082350b 00000494 ffffffff 051bf114 nt!NtTerminateProcess+0x7a f5175d54 7c8285ec 00000494 ffffffff 051bf114 nt!KiFastCallEntry+0xf8 051bf114 00000000 00000000 00000000 00000000 ntdll!KiFastSystemCallRet STACK_COMMAND: kb FOLLOWUP_NAME: MachineOwner FAILURE_BUCKET_ID: 0xF4_PreviewService._IMAGE_csrss.exe BUCKET_ID: 0xF4_PreviewService._IMAGE_csrss.exe Followup: MachineOwner 

编辑:谢谢你的好的答案,但我其实不需要帮助,关于我的服务,我只是想对这个服务的目的有一些基本的了解。

CSRSS承载Win32子系统的服务器端。 这被认为是一个系统关键的过程,如果它终止,你会得到一个蓝屏。 更多的数据是必要的,但你需要找出是否有某个进程正在终止csrss,或者如果它由于错误而崩溃。

Windows内部是这样的东西的好书。 维基百科也有关于CSRSS的文章。

csrss是Win32子系统的用户模式部分 – 与内核模式win32.sys相似的用户模式。 至于你的服务是怎么回事,如果没有关于你的服务在做什么的更好的提示,很难说。

有一件事是为控制台应用程序(如cmd.exe)提供默认的控制台窗口。 至少根据jdeBP:

在Windows上,控制台窗口所有权如何工作?

看来当一个控制台应用程序进程被创建而没有被传递给stdin,stdout和stderr时,那么一些进程间通信会要求csrss在一个新线程中创建一个控制台窗口,并把它的IO句柄给控制台进程。