중단점 제어 방법
가상 주소, 모듈 및 루틴 오프셋 또는 원본 파일 및 줄 번호(원본 모드인 경우)로 중단점의 위치를 지정할 수 있습니다. 오프셋 없이 루틴에 중단점을 배치하면 해당 루틴이 입력될 때 중단점이 활성화됩니다.
중단점의 몇 가지 추가 종류가 있습니다.
중단점은 특정 스레드와 연결할 수 있습니다.
중단점은 트리거되기 전에 주소를 통해 고정된 수의 패스를 사용하도록 설정할 수 있습니다.
중단점은 트리거될 때 특정 명령을 자동으로 실행할 수 있습니다.
실행 불가능한 메모리에 중단점을 설정하고 해당 위치를 읽거나 쓸 watch 수 있습니다.
사용자 모드에서 둘 이상의 프로세스를 디버깅하는 경우 중단점 컬렉션은 현재 프로세스에 따라 달라집니다. 프로세스의 중단점을 보거나 변경하려면 프로세스를 현재 프로세스로 선택해야 합니다. 현재 프로세스에 대한 자세한 내용은 프로세스 및 스레드 제어를 참조하세요.
중단점 제어 및 표시를 위한 디버거 명령
중단점을 제어하거나 표시하려면 다음 메서드를 사용할 수 있습니다.
bl(중단점 목록) 명령을 사용하여 기존 중단점 및 현재 상태 나열합니다.
.bpcmds(중단점 명령 표시) 명령을 사용하여 중단점을 만드는 데 사용된 명령과 함께 모든 중단점을 나열합니다.
bp(중단점 설정) 명령을 사용하여 새 중단점을 설정합니다.
bu(해결되지 않은 중단점 설정) 명령을 사용하여 새 중단점을 설정합니다. bu로 설정된 중단점을 해결되지 않은 중단점이라고 합니다. bp로 설정된 중단점과 다른 특성을 갖습니다. 자세한 내용은 해결되지 않은 중단점(부 중단점)을 참조하세요.
bm(기호 중단점 설정) 명령을 사용하여 지정된 패턴과 일치하는 기호에 새 중단점을 설정합니다. bm이 있는 중단점 집합은 /d 스위치가 포함된 경우 주소(예: bp 중단점)와 연결됩니다. 이 스위치가 포함되지 않으면(예: bu 중단점) 해결되지 않습니다.
ba(Access에서 중단) 명령을 사용하여 데이터 중단점이라고도 하는 프로세서 중단점을 설정합니다. 이러한 중단점은 메모리 위치가 기록될 때, 읽을 때, 코드로 실행될 때 또는 커널 I/O가 발생할 때 트리거될 수 있습니다. 자세한 내용은 프로세서 중단점(ba 중단점)을 참조하세요.
bc(중단점 지우기) 명령을 사용하여 하나 이상의 중단점을 영구적으로 제거합니다.
bd(중단점 사용 안 함) 명령을 사용하여 하나 이상의 중단점을 일시적으로 사용하지 않도록 설정합니다.
be(중단점 사용) 명령을 사용하여 하나 이상의 비활성화된 중단점을 다시 사용하도록 설정합니다.
br(Breakpoint Renumber) 명령을 사용하여 기존 중단점의 ID를 변경합니다.
bs(중단점 명령 업데이트) 명령을 사용하여 기존 중단점과 연결된 명령을 변경합니다.
bsc(조건부 중단점 업데이트) 명령을 사용하여 기존 조건부 중단점이 발생하는 조건을 변경합니다.
WinDbg에는 중단점 제어 및 표시를 용이하게 하는 여러 사용자 인터페이스 요소가 있습니다. WinDbg(클래식)에서 중단점 설정을 참조하세요.
각 중단점에는 연결된 중단점 ID라는 10진수가 있습니다. 이 숫자는 다양한 명령의 중단점을 식별합니다.
중단점 명령
중단점이 적중될 때 자동으로 실행되는 명령을 중단점에 포함할 수 있습니다. 예를 들어 다음 명령은 MyFunction+0x47 중단되고 덤프 파일을 쓴 다음 실행을 다시 시작합니다.
0:000> bu MyFunction+0x47 ".dump c:\mydump.dmp; g"
참고 커널 디버거에서 사용자 모드 디버거를 제어하는 경우 중단점 명령 문자열에서 g(Go) 를 사용하지 마세요. 직렬 인터페이스가 이 명령을 따라갈 수 없으며 CDB로 다시 침입할 수 없습니다. 이 상황에 대한 자세한 내용은 커널 디버거에서 User-Mode 디버거 제어를 참조하세요.
중단점 수
커널 모드에서는 최대 32개의 소프트웨어 중단점을 사용할 수 있습니다. 사용자 모드에서는 원하는 수의 소프트웨어 중단점을 사용할 수 있습니다.
지원되는 프로세서 중단점 수는 대상 프로세서 아키텍처에 따라 달라집니다.
조건부 중단점
특정 조건에서만 트리거되는 중단점을 설정할 수 있습니다. 이러한 종류의 중단점에 대한 자세한 내용은 조건부 중단점 설정을 참조하세요.
모호한 중단점
이제 디버거 엔진 버전 10.0.25310.1001 이상에서 모호한 중단점 확인이 지원됩니다. 모호한 중단점을 사용하면 디버거가 중단점 식이 여러 위치로 확인되는 특정 시나리오에서 중단점을 설정할 수 있습니다. 자세한 내용은 모호한 중단점 확인을 참조하세요.