클라이언트/서버 런타임 하위 시스템

클라이언트/서버 런타임 하위 시스템(Client/Server Runtime Subsystem) 또는 csrss.exe는 윈도우 NT의 구성 요소로서, 사용자 모드 쪽의 Win32 하위 시스템을 제공하며 윈도우 2000 이후로 제공되어 왔다. 대부분의 Win32 Subsystem 영역들이 Windows NT 4 이후로 보호 링 장치 드라이버로 넘어옴에 따라, CSRSS는 대부분의 Win32 콘솔 조작과 GUI 종료를 맡게 되었다. 이것은 시스템 운영에 매우 중요하므로, 이 프로세스를 끝내는 것은 시스템 장애를 유발할 수 있다. 보통의 환경에서 CSRSS는 taskkill 명령어 또는 윈도우 작업 관리자에 의해 종료되지 않는다.

동작 편집

CSRSS는 사용자 모드 윈도우 서비스로서 동작한다. 사용자 모드 프로세스가 콘솔 창, 프로세스/스레드 작성, 사이드 바이 사이드 지원(side-by-side support)과 관련된 함수를 호출할 경우, 시스템 호출을 하는 대신 Win32 라이브러리(kernel32.dll, user32.dll, gdi32.dll)들은 커널과 관계 없이 대부분의 일을 하는 CSRSS 프로세스에게 프로세스 간 호출을 보낸다.[1] 대신 창 관리자와 그래픽 장치 인터페이스(GDI) 서비스들은 커널 모드 드라이버 (win32k.sys)에 의해 관리된다.[2]

CSRSS은 winlogon.exe와 함께 윈도우 시작 시 호출된다. 만약 둘 중 하나에 이상이 있을 시 NT 커널은 블루스크린과 함께 시동을 종료한다. 이 에러 코드는 0xc000021a이다.[3]

같이 보기 편집

각주 편집

  1. “Detailed implementation of a system service in Windows NT”. 《Undocumented Windows NT》. 2011년 7월 17일에 원본 문서에서 보존된 문서. 2010년 6월 10일에 확인함. 
  2. Russinovich, Mark (2009). 《Windows Internals, 5th Edition》. Microsoft Press. 54쪽. 
  3. “Inside the Windows Vista Kernel – Startup Processes”. 《Inside the Windows Vista Kernel – Startup Processes》. Microsoft. 2010년 10월 1일에 확인함. 

외부 링크 편집