.kill(프로세스 종료)
사용자 모드 에서 .kill 명령은 디버그 중인 프로세스를 종료합니다.
커널 모드 에서 .kill 명령은 대상 컴퓨터에서 프로세스를 종료합니다.
사용자 모드 구문
.kill [ /h | /n ]
커널 모드 구문
.kill Process
매개 변수
/h
(사용자 모드에만 해당) 미해결 디버그 이벤트는 계속되며 처리된 것으로 표시됩니다. 기본값입니다.
/n
(사용자 모드에만 해당) 처리된 것으로 표시되지 않고 미해결 디버그 이벤트가 계속됩니다.
프로세스
종료할 프로세스의 주소를 지정합니다. 프로세스를 생략하거나 0이면 현재 시스템 상태에 대한 기본 프로세스가 종료됩니다.
환경
커널 모드에서 이 명령은 Microsoft Windows Server 2003 이상 버전의 Windows에서 지원됩니다.
모드 |
사용자 모드, 커널 모드 |
대상 |
라이브 디버깅만 |
Platforms |
all |
설명
사용자 모드에서 이 명령은 디버그 중인 프로세스를 종료합니다. 디버거가 자식 프로세스에 연결된 경우 .kill을 사용하여 부모 프로세스를 종료하지 않고 자식 프로세스를 종료할 수 있습니다. 자세한 내용은 예제를 참조하세요.
커널 모드에서 이 명령은 대상 컴퓨터에서 선택한 프로세스를 종료할 예약합니다. 다음에 대상이 실행될 수 있는 경우(예: g(Go) 명령을 사용하여 ) 지정된 프로세스가 종료됩니다.
로컬 커널 디버깅 중에는 이 명령을 사용할 수 없습니다.
예제
.childdbg 사용
자식 프로세스를 만들기 전에 부모 프로세스(Parent.exe)에 디버거를 연결한다고 가정합니다. .childdbg 1 명령을 입력하여 부모가 만든 자식 프로세스에 연결하도록 디버거에 지시할 수 있습니다.
1:001> .childdbg 1
Processes created by the current process will be debugged
이제 부모 프로세스를 실행하고 자식 프로세스를 만든 후 중단합니다. | 사용 (프로세스 상태) 부모 및 자식 프로세스에 대한 프로세스 번호를 확인하는 명령입니다.
0:002> |*
. 0 id: 7f8 attach name: C:\Parent\x64\Debug\Parent.exe
1 id: 2d4 child name: notepad.exe
이전 출력에서 자식 프로세스(notepad.exe)의 수는 1입니다. 첫 번째 줄의 시작 부분에 있는 점(.)은 부모 프로세스가 현재 프로세스임을 알려줍니다. 자식이 현재 프로세스를 처리하도록 하려면 |1s를 입력 합니다.
0:002> |1s
...
1:001> |*
# 0 id: 7f8 attach name: C:\Parent\x64\Debug\Parent.exe
. 1 id: 2d4 child name: notepad.exe
자식 프로세스를 종료하려면 .kill 명령을 입력합니다. 부모 프로세스는 계속 실행됩니다.
1:001> .kill
Terminated. Exit thread and process events will occur.
1:001> g
-o 매개 변수 사용
WinDbg 또는 CDB를 시작할 때 -o 매개 변수를 사용하여 하위 프로세스에 연결해야 한다고 디버거에 알릴 수 있습니다. 예를 들어 다음 명령은 WinDbg를 시작하고 Parent.exe 연결합니다. Parent.exe 자식 프로세스를 만들면 WinDbg가 자식 프로세스에 연결됩니다.
windbg -g -G -o Parent.exe
자세한 내용은 WinDbg 명령줄 옵션 및 CDB 명령줄 옵션을 참조하세요.
요구 사항
버전 |
버전:(커널 모드) Windows Server 2003 이상에서 지원됩니다. |