크래시가 발생하는 경우 Windows에서 만든 작은 메모리 덤프 파일을 읽는 방법

이 문서에서는 작은 메모리 덤프 파일을 검사하는 방법을 설명합니다. 작은 메모리 덤프 파일은 컴퓨터가 실패한 이유를 확인하는 데 도움이 될 수 있습니다.

적용 대상 지원되는 모든 버전의 Windows 클라이언트 및 Windows Server

원래 KB 번호: 315263

참고

Windows 8 이상에 대한 디버그 정보를 찾으려면 Windows용 디버깅 도구(WinDbg, KD, CDB, NTSD)를 참조하세요. 작은 메모리 덤프에 대한 자세한 내용은 작은 메모리 덤프를 참조하세요.

작은 메모리 덤프 파일

컴퓨터가 실패하는 경우 어떤 일이 발생했는지 어떻게 확인하고, 문제를 수정하고, 다시 발생하지 않도록 방지할 수 있나요? 이 상황에서는 작은 메모리 덤프 파일이 유용할 수 있습니다. 작은 메모리 덤프 파일에는 컴퓨터가 실패한 이유를 식별하는 데 도움이 될 수 있는 가장 적은 양의 유용한 정보가 포함되어 있습니다. 메모리 덤프 파일에는 다음 정보가 포함됩니다.

  • 중지 메시지, 해당 매개 변수 및 기타 데이터
  • 로드된 드라이버 목록
  • 중지된 프로세서에 대한 프로세서 컨텍스트(PRCB)
  • 중지된 프로세스에 대한 EPROCESS(프로세스 정보 및 커널 컨텍스트)
  • 중지된 스레드에 대한 프로세스 정보 및 커널 컨텍스트(ETHREAD)
  • 중지된 스레드에 대한 커널 모드 호출 스택

메모리 덤프 파일을 만들려면 Windows에 최소 2MB(메가바이트) 이상의 부팅 볼륨에 페이징 파일이 필요합니다. Microsoft Windows 2000 또는 이후 버전의 Windows를 실행하는 컴퓨터에서는 컴퓨터 오류가 발생할 때마다 새 메모리 덤프 파일이 만들어집니다. 이러한 파일의 기록은 폴더에 저장됩니다. 두 번째 문제가 발생하고 Windows에서 두 번째 작은 메모리 덤프 파일을 만드는 경우 Windows는 이전 파일을 유지합니다. Windows는 각 파일에 날짜로 인코딩된 고유한 파일 이름을 제공합니다. 예를 들어 Mini022900-01.dmp 2000년 2월 29일에 생성된 첫 번째 메모리 덤프 파일입니다. Windows는 %SystemRoot%\Minidump 폴더에 있는 모든 작은 메모리 덤프 파일 목록을 유지합니다.

작은 메모리 덤프 파일은 하드 디스크 공간이 제한된 경우 유용할 수 있습니다. 그러나 포함된 제한된 정보로 인해 문제 발생 당시 실행 중이던 스레드로 인해 직접 발생하지 않은 오류는 이 파일의 분석에 의해 검색되지 않을 수 있습니다.

덤프 유형 구성

작은 메모리 덤프 파일을 사용하도록 시작 및 복구 옵션을 구성하려면 다음 단계를 수행합니다.

참고

다음 단계는 Windows 버전에 따라 컴퓨터에서 다를 수 있습니다. 다른 경우 제품 설명서를 참조하여 이러한 단계를 완료합니다.

  1. 시작>제어판을 선택합니다.

  2. 시스템을 두 번 클릭한 다음 고급 시스템 설정>고급을 선택합니다.

  3. 시작 및 복구에서 설정을 선택합니다.

  4. 쓰기 디버깅 정보 목록에서 작은 메모리 덤프(256k)를 선택합니다.

    시작 및 복구 창의 디버깅 정보 쓰기 목록에 있는 작은 메모리 덤프(256k) 옵션의 스크린샷

작은 메모리 덤프 파일의 폴더 위치를 변경하려면 덤프 파일 상자 또는 작은 덤프 디렉터리 상자에 새 경로를 입력합니다(Windows 버전에 따라 다름).

작은 메모리 덤프 파일을 읽는 도구

덤프 검사 유틸리티(Dumpchk.exe)를 사용하여 메모리 덤프 파일을 읽거나 파일이 올바르게 만들어졌는지 확인합니다.

참고

덤프 검사 유틸리티는 디버깅 기호에 액세스할 필요가 없습니다. 기호 파일에는 이진 파일을 실행할 때 실제로 필요하지 않은 다양한 데이터가 있습니다. 그러나 이 데이터는 디버깅에 매우 유용할 수 있습니다.

Windows NT, Windows 2000, Windows Server 2003 또는 Windows Server 2008에서 덤프 검사 유틸리티를 사용하는 방법에 대한 자세한 내용은 Dumpchk.exe 사용하여 메모리 덤프 파일 검사 참조하세요.

Windows XP, Windows Vista 또는 Windows 7에서 덤프 검사 유틸리티를 사용하는 방법에 대한 자세한 내용은 Dumpchk.exe 사용하여 메모리 덤프 파일을 검사 방법을 참조하세요.

또는 Windows 디버거(WinDbg.exe) 도구 또는 커널 디버거(KD.exe) 도구를 사용하여 작은 메모리 덤프 파일을 읽을 수 있습니다. WinDbg.exeKD.exe 최신 버전의 Windows용 디버깅 도구 패키지에 포함되어 있습니다.

디버깅 도구를 설치하려면 Windows용 디버깅 도구 다운로드 및 설치 웹 페이지를 참조하세요. 일반적인 설치를 선택합니다. 기본적으로 설치 관리자는 다음 폴더에 디버깅 도구를 설치합니다.

C:\Program Files\Debugging Tools for Windows

또한 도구 웹 페이지에서는 Windows용 다운로드 가능한 기호 패키지에 액세스할 수 있습니다. Windows 기호에 대한 자세한 내용은 기호를 사용하여 디버깅Windows 기호 패키지 다운로드 웹 페이지를 참조하세요.

Windows의 덤프 파일 옵션에 대한 자세한 내용은 Windows 용 메모리 덤프 파일 옵션 개요를 참조하세요.

덤프 파일 열기

설치가 완료된 후 덤프 파일을 열려면 다음 단계를 수행합니다.

  1. 실행 시작을> 선택하고 를 입력cmd한 다음 확인을 선택합니다.

  2. Windows용 디버깅 도구 폴더로 변경합니다. 이렇게 하려면 명령 프롬프트에 다음을 입력한 다음 Enter 키를 누릅니다.

    cd C:\Program Files\Debugging Tools For Windows
    
  3. 덤프 파일을 디버거에 로드하려면 다음 명령 중 하나를 입력한 다음 Enter 키를 누릅니다.

    windbg -y SymbolPath -i ImagePath -z DumpFilePath
    
    kd -y SymbolPath -i ImagePath -z DumpFilePath
    

다음 표에서는 이러한 명령에 사용되는 자리 표시자의 사용에 대해 설명합니다.

자리 표시자 설명
SymbolPath 기호 파일이 다운로드된 로컬 경로 또는 캐시 폴더를 포함한 기호 서버 경로입니다. 작은 메모리 덤프 파일에는 제한된 정보가 포함되어 있으므로 덤프 파일을 올바르게 읽으려면 실제 이진 파일을 기호와 함께 로드해야 합니다.
Imagepath 이러한 파일의 경로입니다. 파일은 Windows XP CD-ROM의 I386 폴더에 포함되어 있습니다. 예를 들어 경로는 일 수 있습니다 C:\Windows\I386.
DumpFilePath 검사하는 덤프 파일의 경로 및 파일 이름입니다.

샘플 명령

다음 샘플 명령을 사용하여 덤프 파일을 열 수 있습니다. 이러한 명령은 다음을 가정합니다.

  • Windows CD-ROM의 I386 폴더 내용이 C:\Windows\I386 폴더에 복사됩니다.
  • 덤프 파일의 이름은 C:\Windows\Minidump\Minidump.dmp.

샘플 1(명령줄):

kd -y srv*C:\Symbols*https://msdl.microsoft.com/download/symbols -i C:\Windows\i386 -z C:\Windows\Minidump\minidump.dmp

샘플 2(그래픽 UI). 명령줄 버전 대신 디버거의 그래픽 버전을 선호하는 경우 대신 다음 명령을 입력합니다.

windbg -y srv*C:\Symbols*https://msdl.microsoft.com/download/symbols -i C:\Windows\i386 -z C:\Windows\Minidump\minidump.dmp

덤프 파일 검사

다음 명령을 포함하여 덤프 파일에서 정보를 수집하는 데 사용할 수 있는 몇 가지 명령이 있습니다.

  • !analyze -show 명령은 중지 오류 코드와 해당 매개 변수를 표시합니다. 중지 오류 코드는 버그 검사 코드라고도 합니다.
  • !analyze -v 이 명령은 자세한 출력을 표시합니다.
  • lm N T 명령은 지정된 로드된 모듈을 나열합니다. 출력에는 상태 및 모듈의 경로가 포함됩니다.

참고

이전 버전의 Windows(사전 업데이트 Windows XP) !drivers 에서 확장 명령은 대상 컴퓨터에 로드된 모든 드라이버 목록과 메모리 사용에 대한 요약 정보를 표시합니다. 그러나 !drivers 확장 명령은 Windows XP 이상 버전에서 사용되지 않습니다. 로드된 드라이버 및 기타 모듈에 대한 정보를 표시하려면 명령을 사용합니다 lm . 명령은 lm N T 이전 !drivers 확장과 유사한 형식으로 정보를 표시합니다.

다른 명령 및 전체 명령 구문에 대한 도움말은 디버깅 도구 도움말 설명서를 참조하세요. 디버깅 도구 도움말 설명서는 다음 위치에서 찾을 수 있습니다.

C:\Program Files\Debugging Tools for Windows\Debugger.chm

참고

기호 관련 문제가 있는 경우 Symchk 유틸리티를 사용하여 올바른 기호가 올바르게 로드되었는지 확인합니다. Symchk를 사용하는 방법에 대한 자세한 내용은 기호로 디버깅을 참조하세요.

일괄 처리 파일을 사용하여 명령 간소화

메모리 덤프를 로드하는 데 사용해야 하는 명령을 식별한 후 일괄 처리 파일을 만들어 덤프 파일을 검사할 수 있습니다. 예를 들어 일괄 처리 파일을 만들고 이름을 로Dump.bat. 디버깅 도구가 설치된 폴더에 저장합니다. 일괄 처리 파일에 다음 텍스트를 입력합니다.

cd "C:\Program Files\Debugging Tools for Windows"

kd -y srv*C:\Symbols*https://msdl.microsoft.com/download/symbols -i C:\Windows\i386 -z %1

덤프 파일을 검사하려는 경우 다음 명령을 입력하여 덤프 파일 경로를 일괄 처리 파일에 전달합니다.

dump C:\Windows\Minidump\minidump.dmp