본문 바로가기
반응형

WinDbg3

윈도우 구조 - 커널 진입 - Ntdll.dll 세부 분석 우리가 편지를 쓴다면, 보내는 사람은 “나”라는 이름으로 편지를 보내고, 받는 사람 “너”라는 사람이 편지 내용을 읽고 회신하게 된다. 이 과정 속에 실질적인 편지 배달은 우체국에서 진행하게 된다. 우체국은 중간에서 편지를 각 지역별로 구분한 후, 공통된 배달 방식에 맞게 구분하여 편지를 배달해 주는 것이다. 이와 같은 원리는 시스템에서도 볼 수 있다. 편지와 비교해 본다면, “나”는 응용프로그램으로 사용자의 입력이나, 처리 요청을 받아 개발 의도에 맞게 가공하여 커널에 처리를 요청하게 된다. 그리고 커널은 편지에서 “너”라고 할 수 있다. 이 둘간의 전달 역할을 해주는 것이 서브시스템과 Ntdll.dll로써, 서브시스템은 바로 우편배달부처럼 각 지역 요청들을 수집하여 우체국에 전달하고 이를 우체국과 유.. 2022. 4. 2.
[WebBook] 윈도우 구조 - 시스템 프로세스(Windows Startup Process) - 서브시스템 관리자 Csrss.exe Client-Server Runtime Subsystem의 약자로, 앞서 Smss가 로드하는 3개의 서브시스템 중 하나로, 윈도우 서브시스템이라고도 불리우며, 윈도우상에서 실행되는 프로세스와 스레드들의 관리를 담당한다. Csrss.exe(이하 Csrss)는 실행시 Basesrv.dll(Microsoft Windows NT Base API Server Library), Winsrv.dll(Windows Server Library), Csrsrv.dll(Client Server Runtime Process)을 로드하여 콘솔 윈도우(Console windows) 처리, 프로세스와 스레드 생성과 삭제, 16비트 가상 DOS 머신(VDM) 프로세스를 위한 기능 일부 및 SxS(Side-by-Side)를 지원하게 .. 2022. 2. 28.
시스템 시작, 커널 생성 MBR과 부트 섹터를 지나 부트 로더인 Ntldr(비스타 이후 Winload.exe로 변경되었다)를 통해 BCD(Windows Boot Manager)의 실행까지 알아보았다. 이후 BCD는 지정된 시간 동안 입력이 없으면, 기본적으로 지정된 운영제체를 실행하여 부팅을 위한 윈도우 커널 초기화 작업을 진행하게 된다. 이때 부트 파티션에서 커널 초기화에 필요한 적절한 커널(Ntoskrnl.exe외 3가지) 파일과 HAL(Hardware Abstraction Layer) 이미지 등을 로드하고, 레지스트리 %SystemRoot%\System32\Config\System을 HIVE(연결) 하여 디바이스 드라이버를 로드하는 작업을 진행하게 된다(레지스트리에 대해서는 추후 커널과 유저의 소통에서 다룬다). 커널 초기.. 2022. 2. 13.
반응형