Анализ файла дампа User-Mode

Этот раздел включает следующие темы.

Анализ файла дампа User-Mode с помощью WinDbg

Файлы дампа памяти в пользовательском режиме можно анализировать с помощью WinDbg. Версия процессора или Windows, в которой был создан файл дампа, не должна соответствовать платформе, на которой выполняется WinDbg.

Установка файлов символов

Перед анализом файла дампа памяти необходимо получить доступ к файлам символов для версии Windows, создающей файл дампа. Эти файлы будут использоваться отладчиком для анализа файла дампа. Сведения о работе с сервером символов см. в разделе Общедоступные символы Майкрософт.

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

Запуск WinDbg

Чтобы проанализировать файл дампа, запустите WinDbg с параметром командной строки -z :

windbg -ySymbolPath-iImagePath-zDumpFileName

Параметр -v (подробный режим) также полезен. Полный список параметров см. в разделе Параметры Command-Line WinDbg.

Если WinDbg уже запущен и находится в неактивном режиме, можно открыть аварийный дамп, выбрав Файл | Откройте команду меню Аварийный дамп или нажмите сочетание клавиш CTRL+D. Когда откроется диалоговое окно Открытие аварийного дампа , введите полный путь и имя файла аварийного дампа в текстовом поле Имя файла или используйте диалоговое окно для выбора правильного пути и имени файла. Выбрав нужный файл, нажмите кнопку Открыть.

Вы также можете открыть файл дампа после запуска отладчика с помощью команды .opendump (Открыть файл дампа), за которой следует g (Go).

Одновременно можно выполнить отладку нескольких файлов дампа. Это можно сделать, включив несколько параметров -z в командной строке (за каждым из которых следует другое имя файла) или с помощью opendump для добавления дополнительных файлов дампа в качестве целевых объектов отладчика. Сведения об управлении сеансом с несколькими целевыми объектами см. в разделе Отладка нескольких целевых объектов.

Файлы дампа обычно заканчиваются расширением DMP или MDMP. Для файла дампа памяти можно использовать сетевые ресурсы или имена файлов универсального соглашения об именовании (UNC).

Файлы дампа также часто упаковываются в CAB-файл. Если указать имя файла (включая расширение .cab) после параметра -z или в качестве аргумента команды .opendump , отладчик может считывать файлы дампа непосредственно из CAB. Однако при наличии нескольких файлов дампа, хранящихся в одном cab-файле, отладчик сможет прочитать только один из них. Отладчик не будет считывать дополнительные файлы из CAB, даже если они были файлами символов или исполняемыми файлами, связанными с файлом дампа.

Анализ полного файла дампа пользователя

Анализ полного файла дампа пользователя аналогичен анализу динамического сеанса отладки. Дополнительные сведения о том, какие команды доступны для отладки файлов дампа в пользовательском режиме, см. в разделе Справочник по командам отладчика .

Анализ файлов minidump

Анализ файла мини-дампа в пользовательском режиме выполняется так же, как и полный дамп пользователя. Тем не менее, так как сохранено гораздо меньше памяти, вы гораздо более ограничены в действиях, которые вы можете выполнить. Команды, которые пытаются получить доступ к памяти за пределами того, что сохраняется в файле minidump, не будут работать должным образом.

Дополнительные методы

Сведения о методах, которые можно использовать для чтения определенных типов информации из файла дампа, см. в разделе Извлечение сведений из файла дампа.

Анализ файла дампа User-Mode с помощью CDB

CdB может анализировать файлы дампа памяти в пользовательском режиме. Версия процессора или Windows, в которой был создан файл дампа, не должна соответствовать платформе, на которой выполняется CDB.

Установка файлов символов

Перед анализом файла дампа памяти необходимо получить доступ к файлам символов для версии Windows, создающей файл дампа. Эти файлы будут использоваться отладчиком для анализа файла дампа. Сведения о работе с сервером символов см. в разделе Общедоступные символы Майкрософт.

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

Запуск CDB

Чтобы проанализировать файл дампа, запустите CDB с параметром командной строки -z :

cdb -ySymbolPath-iImagePath-zDumpFileName

Параметр -v (подробный режим) также полезен. Полный список параметров см. в разделе Параметры Command-Line CDB.

Вы также можете открыть файл дампа после запуска отладчика с помощью команды .opendump (Открыть файл дампа), за которой следует g (Go). Это позволяет выполнять отладку нескольких файлов дампа одновременно.

Одновременно можно выполнить отладку нескольких файлов дампа. Это можно сделать, включив несколько параметров -z в командной строке (за каждым из которых следует другое имя файла) или с помощью opendump для добавления дополнительных файлов дампа в качестве целевых объектов отладчика. Сведения об управлении сеансом с несколькими целевыми объектами см. в разделе Отладка нескольких целевых объектов.

Файлы дампа обычно заканчиваются расширением DMP или MDMP. Для файла дампа памяти можно использовать сетевые ресурсы или имена файлов универсального соглашения об именовании (UNC).

Файлы дампа также часто упаковываются в CAB-файл. Если указать имя файла (включая расширение .cab) после параметра -z или в качестве аргумента команды .opendump , отладчик может считывать файлы дампа непосредственно из CAB. Однако при наличии нескольких файлов дампа, хранящихся в одном cab-файле, отладчик сможет прочитать только один из них. Отладчик не будет считывать дополнительные файлы из CAB, даже если они являются файлами символов или исполняемыми файлами, связанными с файлом дампа.

Анализ полного файла дампа пользователя

Анализ полного файла дампа пользователя аналогичен анализу динамического сеанса отладки. Дополнительные сведения о том, какие команды доступны для отладки файлов дампа в пользовательском режиме, см. в разделе Справочник по командам отладчика .

Анализ файлов minidump

Анализ файла мини-дампа в пользовательском режиме выполняется так же, как и полный дамп пользователя. Тем не менее, так как сохранено гораздо меньше памяти, вы гораздо более ограничены в действиях, которые вы можете выполнить. Команды, которые пытаются получить доступ к памяти за пределами того, что сохраняется в файле minidump, не будут работать должным образом.

Дополнительные методы

Сведения о методах, которые можно использовать для чтения определенных типов информации из файла дампа, см. в разделе Извлечение сведений из файла дампа.