Поделиться через


Чтение небольшого файла дампа памяти, созданного Windows при сбое

В этой статье описывается, как изучить небольшой файл дампа памяти. Небольшой файл дампа памяти поможет определить, почему компьютер завершился сбоем.

Применимо ко всем поддерживаемым версиям клиента Windows и Windows Server

Исходный номер базы знаний: 315263

Примечание.

Если вы ищете сведения об отладке для Windows 8 или более поздней версии, см. статью "Средства отладки" для Windows (WinDbg, KD, CDB, NTSD). Дополнительные сведения о небольших дампах памяти см. в разделе "Небольшой дамп памяти".

Небольшие файлы дампа памяти

Если компьютер завершается ошибкой, как определить, что произошло, устранить проблему и предотвратить ее повторное возникновение? В этой ситуации можно найти небольшой файл дампа памяти. Небольшой файл дампа памяти содержит наименьшее количество полезных сведений, которые помогут определить, почему компьютер завершился сбоем. Файл дампа памяти содержит следующие сведения:

  • Сообщение Stop, его параметры и другие данные
  • Список загруженных драйверов
  • Контекст процессора (PRCB) для процессора, остановленного
  • Сведения о процессе и контекст ядра (EPROCESS) для процесса, остановленного
  • Сведения о процессе и контекст ядра (ETHREAD) для потока, остановившегося
  • Стек вызовов в режиме ядра для потока, остановленного

Чтобы создать файл дампа памяти, Windows требует разбиения на страницы в томе загрузки, который составляет не менее 2 мегабайта (МБ). На компьютерах под управлением Microsoft Windows 2000 или более поздней версии Windows создается новый файл дампа памяти при каждом сбое компьютера. Журнал этих файлов хранится в папке. Если возникает вторая проблема, и если Windows создает второй небольшой файл дампа памяти, Windows сохраняет предыдущий файл. Windows предоставляет каждому файлу отдельное имя файла в кодировке даты. Например, Mini022900-01.dmp — это первый файл дампа памяти, созданный 29 февраля 2000 г. Windows хранит список всех файлов дампа памяти в папке %SystemRoot%\Minidump .

Небольшой файл дампа памяти может быть полезен, если жесткое место на диске ограничено. Однако из-за ограниченной информации, включаемой, ошибки, которые не были непосредственно вызваны потоком, выполняющимся в момент возникновения проблемы, не могут быть обнаружены анализом этого файла.

Настройка типа дампа

Чтобы настроить параметры запуска и восстановления для использования небольшого файла дампа памяти, выполните следующие действия.

Примечание.

Следующие действия могут отличаться на компьютере в зависимости от вашей версии Windows. Если они отличаются, ознакомьтесь с документацией по продукту, чтобы выполнить эти действия.

  1. Выберите Пуск>Панель управления.

  2. Дважды щелкните "Система" и выберите "Дополнительные параметры>системы".

  3. В разделе "Запуск и восстановление" выберите "Параметры".

  4. В списке сведений об отладке записи выберите небольшой дамп памяти (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.exe и KD.exe включены в последнюю версию пакета средств отладки для Windows.

Чтобы установить средства отладки, см . веб-страницу "Скачать и установить средства отладки" для Windows . Выберите типичную установку. По умолчанию установщик устанавливает средства отладки в следующей папке:

C:\Program Files\Debugging Tools for Windows

Веб-страница инструментов также предоставляет доступ к загружаемым пакетам символов для Windows. Дополнительные сведения о символах Windows см. на веб-странице "Отладка с помощью символов" и на веб-странице "Скачать пакеты символов Windows".

Дополнительные сведения о параметрах файла дампа в Windows см. в разделе "Обзор параметров файла дампа памяти" для Windows.

Открытие файла дампа

Чтобы открыть файл дампа после завершения установки, выполните следующие действия.

  1. Нажмите кнопку "Запустить>", введите cmdи нажмите кнопку "ОК".

  2. Перейдите в папку "Средства отладки для Windows ". Для этого введите следующую команду в командной строке и нажмите клавишу ВВОД:

    cd C:\Program Files\Debugging Tools For Windows
    
  3. Чтобы загрузить файл дампа в отладчик, введите любую из следующих команд и нажмите клавишу ВВОД:

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

В следующей таблице объясняется использование заполнителей, которые используются в этих командах.

Заполнитель Описание
SymbolPath Локальный путь, по которому скачаны файлы символов, или путь к серверу символов, включая папку кэша. Так как небольшой файл дампа памяти содержит ограниченную информацию, фактические двоичные файлы должны загружаться вместе с символами, чтобы файл дампа был правильно считан.
ImagePath Путь к этим файлам. Файлы содержатся в папке I386 на компакт-диске Windows XP. Например, путь может быть C:\Windows\I386.
DumpFilePath Путь и имя файла для проверяемого файла дампа.

Примеры команд

Для открытия файла дампа можно использовать следующие примеры команд. Эти команды предполагают следующее:

  • Содержимое папки I386 на компакт-диске Windows копируется в папку 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 (графический пользовательский интерфейс). Если вы предпочитаете графическую версию отладчика вместо версии командной строки, введите следующую команду:

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

Проверка файла дампа

Существует несколько команд, которые можно использовать для сбора информации в файле дампа, включая следующие команды:

  • Команда !analyze -show отображает код ошибки stop и его параметры. Код ошибки остановки также называется кодом проверки ошибок.
  • Команда отображает подробные выходные !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