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


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

Эта статья включает в себя следующее:

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

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

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

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

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

Запуск WinDbg

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

windbg -ySymbolPath-iImagePath-zDumpFileName

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Запуск CDB

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

cdb -ySymbolPath-iImagePath-zDumpFileName

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

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

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

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

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

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

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

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

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

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

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