.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 이상에서 지원됩니다.