Share via


.dump(덤프 파일 만들기)

.dump 명령은 사용자 모드 또는 커널 모드 크래시 덤프 파일을 만듭니다.

.dump [options] FileName
.dump /?

매개 변수

옵션
다음 옵션 중 하나 이상을 나타냅니다.

/a
모든 프로세스에 대한 덤프를 만듭니다(-u 필요).

/b[a]
CAB에서 덤프를 패키지하고 덤프를 삭제합니다. 옵션을 지정하면 추가 정보가 포함됩니다.

/c <주석>
주석을 추가합니다(모든 형식에서 지원되지 않음).

/j <addr>
JIT_DEBUG_INFO 주소를 제공합니다.

/O
동일한 이름의 기존 덤프 파일을 덮어씁니다. 이 옵션을 사용하지 않고 동일한 파일 이름을 가진 파일이 있는 경우 덤프 파일이 작성되지 않습니다.

/u
덤프 이름에 고유 식별자를 추가합니다.

/f[FullOptions]
(커널 모드:) 전체 메모리 덤프를 만듭니다.

(사용자 모드:) 지원되지 않습니다. 이전에 이 옵션은 최신 미니덤프 형식보다 정보가 적은 레거시 형식인 전체 사용자 모드 덤프를 만듭니다. 자세한 내용은 User-Mode 덤프 파일의 품종을 참조하세요.

다음 FullOptions를 추가하여 덤프 파일의 내용을 변경할 수 있습니다. 옵션은 대/소문자를 구분합니다.

FullOption 효과
y 덤프 파일에 AVX 레지스터 정보를 추가합니다.

/m[MiniOptions]
작은 메모리 덤프(커널 모드) 또는 미니덤프(사용자 모드)를 만듭니다. 자세한 내용은 사용자 모드 덤프 파일을 참조하세요. /f/m을 모두 지정하지 않으면 /m이 기본값입니다.

사용자 모드에서는 덤프에 포함할 추가 데이터를 지정하는 추가 MiniOptions함께 /m을 따를 수 있습니다. MiniOptions가 포함되지 않은 경우 덤프에는 모듈, 스레드 및 스택 정보가 포함되지만 추가 데이터는 포함되지 않습니다. 다음 MiniOptions 를 추가하여 덤프 파일의 내용을 변경할 수 있습니다. 대/소문자를 구분합니다.

MiniOption 효과
a 모든 선택적 추가를 사용하여 미니덤프를 만듭니다. /ma 옵션은 /mfFhut에 해당합니다. 전체 메모리 데이터, 처리 데이터, 언로드된 모듈 정보, 기본 메모리 정보 및 스레드 시간 정보를 미니덤프에 추가합니다. 액세스할 수 없는 메모리를 읽지 못하면 미니덤프 생성이 종료됩니다.
A /mA 옵션은 액세스할 수 없는 메모리를 읽지 못하는 오류를 무시하고 미니덤프를 계속 생성한다는 점을 제외하고 /ma와 동일합니다.
f 미니덤프에 전체 메모리 데이터를 추가합니다. 대상 애플리케이션이 소유한 모든 액세스 가능한 커밋된 페이지가 포함됩니다.
F 미니덤프에 모든 기본 메모리 정보를 추가합니다. 이렇게 하면 유효한 메모리에 대한 정보뿐만 아니라 모든 기본 메모리 정보가 포함된 스트림이 미니덤프에 추가됩니다. 이렇게 하면 미니덤프를 디버그할 때 디버거가 프로세스의 전체 가상 메모리 레이아웃을 다시 구성할 수 있습니다.
h 대상 애플리케이션과 연결된 핸들에 대한 데이터를 미니덤프에 추가합니다.
u 미니덤프에 언로드된 모듈 정보를 추가합니다.
t 미니덤프에 추가 스레드 정보를 추가합니다. 여기에는 미니덤프를 디버깅할 때 !runaway 확장 또는 .ttime(스레드 시간 표시) 명령을 사용하여 표시할 수 있는 스레드 시간이 포함됩니다.
i 미니덤프에 보조 메모리를 추가합니다. 보조 메모리는 스택 또는 백업 저장소의 포인터에서 참조하는 메모리와 이 주소를 둘러싼 작은 영역입니다.
p PEB(프로세스 환경 블록) 및 TEB(스레드 환경 블록) 데이터를 미니덤프에 추가합니다. 이는 애플리케이션의 프로세스 및 스레드와 관련된 Windows 시스템 정보에 액세스해야 하는 경우에 유용할 수 있습니다.
w 모든 커밋된 읽기-쓰기 프라이빗 페이지를 미니덤프에 추가합니다.
실행 이미지 내의 모든 읽기-쓰기 데이터 세그먼트를 미니덤프에 추가합니다.
c 이미지 내에 코드 섹션을 추가합니다.
r 스택의 해당 부분을 미니덤프에서 삭제하고 스택 추적을 다시 만드는 데 유용하지 않은 메모리를 저장합니다. 지역 변수 및 기타 데이터 형식 값도 삭제됩니다. 이 옵션은 미니덤프를 더 작게 만들지 않지만(이러한 메모리 섹션이 단순히 0이기 때문에) 다른 애플리케이션의 개인 정보를 보호하려는 경우에 유용합니다.
R 미니덤프에서 전체 모듈 경로를 삭제합니다. 모듈 이름만 포함됩니다. 이는 사용자의 디렉터리 구조의 개인 정보를 보호하려는 경우에 유용한 옵션입니다.
y 덤프 파일에 AVX 레지스터 정보를 추가합니다.

커널 모드 옵션

커널 모드에서 사용할 수 있는 옵션은 다음과 같습니다.

/k
커널 메모리만 있는 덤프를 만듭니다.

/카
활성 커널 및 사용자 모드 메모리를 사용하여 덤프를 만듭니다.

추가 정보

커널 모드 덤프 파일에 대한 설명과 사용 설명은 커널 모드 덤프 파일을 참조하세요. 사용자 모드 덤프 파일에 대한 설명과 사용 설명은 사용자 모드 덤프 파일을 참조하세요.

설명

이 명령은 다음과 같은 다양한 상황에서 사용할 수 있습니다.

  • 라이브 사용자 모드 디버깅 중에 이 명령은 대상 애플리케이션에 덤프 파일을 생성하도록 지시하지만 대상 애플리케이션은 종료되지 않습니다.

  • 라이브 커널 모드 디버깅 중에 이 명령은 대상 컴퓨터에 덤프 파일을 생성하도록 지시하지만 대상 컴퓨터는 충돌하지 않습니다.

  • 크래시 덤프 디버깅 중에 이 명령은 이전 파일에서 새 크래시 덤프 파일을 만듭니다. 이는 큰 크래시 덤프 파일이 있고 더 작은 크래시 덤프 파일을 만들려는 경우에 유용합니다.

생성될 덤프 파일의 유형을 제어할 수 있습니다.

  • 커널 모드에서 전체 메모리 덤프를 생성하려면 /f 옵션을 사용합니다. 작은 메모리 덤프를 생성하려면 /m 옵션(또는 옵션 없음)을 사용합니다. .dump 명령은 커널 메모리 덤프를 생성할 수 없습니다.

  • 사용자 모드에서 .dump/m[MiniOptions] 이 가장 적합합니다. "m"은 "minidump"를 의미하지만 이 MiniOption 을 사용하여 만든 덤프 파일의 크기는 매우 작은 것부터 매우 큰 것까지 다양할 수 있습니다. 적절한 MiniOptions 를 지정하면 포함된 정보를 정확히 제어할 수 있습니다. 예를 들어 .dump /ma 는 많은 정보가 포함된 덤프를 생성합니다. 이전 명령인 .dump /f는 적당히 큰 "표준 덤프" 파일을 생성하며 사용자 지정할 수 없습니다.

덤프되는 프로세스를 지정할 수 없습니다. 실행 중인 모든 프로세스가 덤프됩니다.

/xc, /xr, /xp/xt 옵션은 덤프 파일에 예외 및 컨텍스트 정보를 저장하는 데 사용됩니다. 이렇게 하면 이 덤프 파일에서 .ecxr(예외 컨텍스트 레코드 표시) 명령을 실행할 수 있습니다.

다음 예제에서는 전체 메모리 및 핸들 정보를 포함하는 사용자 모드 미니덤프를 만듭니다.

0:000> .dump /mfh myfile.dmp

!handle 확장 명령을 사용하여 핸들 정보를 읽을 수 있습니다.

참고 항목

Kernel-Mode 덤프 파일의 종류