Windows файл дампа памяти что это

Дамп памяти в Windows – зачем нужен и как его включить

С критическими ошибками «оконной» ОС знаком практически каждый её пользователь, и появляющиеся при этом синие экраны смерти (BSoD) обычно ничего хорошего не предвещают. Они могут быть спровоцированы программными или аппаратными причинами, и поскольку источник неприятности не всегда очевиден, решение начинается с диагностических мероприятий.

Исправить ошибку бывает непросто, и часто самым полезным средством для диагностики причин возникшего сбоя становится дамп памяти, представляющий собой снимок состояния оперативной памяти операционки с отладочными сведениями. Причём в Windows не всегда активировано автоматическое создание и сохранение на жёсткий диск дампов памяти, тогда как в исправлении BSoD независимо от характера сбоя эти данные могут сильно помочь.

Для чего нужен дамп памяти Windows

Содержимое оперативной памяти и материалы, касающиеся сбоя, могут писаться в файл подкачки, при следующем старте операционки создаётся аварийный дамп с информацией об отладке, сформированной на базе сохранённых данных (ОС может создавать memory dump и минуя файл подкачки). В журнале событий будет сделана запись об ошибке, если данная опция настроена.

Вывод участка дампа 32-х битной ОС Windows с помощью программы Debug.exe

Тип записываемого дампа может задаваться в свойствах ОС, поддерживаются варианты:

  1. Малый дамп памяти. Включает немного сведений, в частности это код ошибки с параметрами, список установленных в Виндовс драйверов и т. д., но этой информации бывает достаточно для выявления источника проблемы. Элемент, как правило, будет записан в каталоге C:\Windows\Minidump.
  2. Дамп памяти ядра. Выполняется сохранение сведений оперативной памяти, связанных только с режимом ядра, исключая информацию, не указывающую на источник появления сбоя.
  3. Полный дамп системы. Содержимым является вся память операционки, что может создать проблемы при создании снимка, если объём ОЗУ составляет более 4Гб. Обычно пишется в файл C:\Windows\MEMORY.DMP.
  4. Автоматический дамп памяти (стал доступным с восьмой версии Виндовс). Содержит те же записи, что и memory dump ядра, при этом отличается способом управления системой размером файла подкачки.
  5. Активный дамп памяти (представлен в «Десятке»). Содержит только активную память хоста из режимов ядра и пользователя* (возможность была изначально реализована для серверов, чтобы при диагностике в дамп не попадали виртуальные машины).

*Дамп пользовательского режима представляет собой дамп определённого процесса. Так, содержимым может являться полная память процесса или фрагмент, список, стек, состояние потоков, списки библиотек, состояние потоков, дескрипторы объектов ядра.

Чаще всего аварийный дамп памяти Windows 7, 8, 10 используется в целях диагностики и позволяет выяснить, как исправить критическую ошибку. Проанализировав содержимое, можно понять, что стало причиной неполадки, и приступить к её устранению.

Как включить создание дампа памяти в Windows

Чтобы активировать автоматическое сохранение memory dump в Виндовс, нужно сделать следующее:

  1. Переходим к свойствам системы любым удобным способом. Например, жмём правой кнопкой мыши по значку «Мой компьютер» (или «Этот компьютер» на «Десятке»). Выбираем «Свойства», затем в перечне опций в левой колонке жмём «Дополнительные параметры системы». Альтернативный вариант – использование Панели управления, где следует перейти в раздел «Система» (то же окно появится при использовании клавиш Win+Pause), а затем в «Дополнительные параметры системы». В Виндовс 10 также можно применить оснастку «Параметры»(Win+I). В окне нужно перейти к разделу «Система – «О системе» – «Сведения о системе» и далее в дополнительные параметры ОС.
  2. В открывшемся окне на вкладке «Дополнительно» в области «Загрузка и восстановление» жмём «Параметры».
  3. В итоге манипуляций откроется следующее окно, где следует выбрать тип записи отладочной информации, задать параметры, проставив в нужных пунктах галочки, после чего нажать кнопку «ОК».
Читайте также:  Windows boot configuration command

Как настроить дамп памяти в Windows

Настройки действий, производимых при аварийной остановке работы ОС, выполняются в том же окне, что и включение создания memory dump («Загрузка и восстановление»), куда мы попадаем из свойств системы.

Здесь можно настроить параметры запуска ОС и назначить определённые действия в случае её отказа, например:

  • указать режим записи дампа со сведениями отладки (по умолчанию выбран автоматический, но может быть выставлено значение «Нет»);
  • записать события в журнал (записи добавляются в логи);
  • отмеченный пункт «Выполнить автоматическую перезагрузку» позволяет системе перезагрузиться после сбоя и продолжить функционировать;
  • при выборе опции «Заменять существующий файл дампа», объект будет подвергаться перезаписи при каждой появляющейся ошибке.

При эксплуатации SSD лучше оставить тип записи «Автоматический дамп памяти», но если нужен файл аварийного дампа, лучше выставить «Малый дамп памяти», он самый лёгкий и его несложно переслать другому пользователю, если вам нужна помощь в анализе состояния.

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

Прочитать memory dump можно посредством специализированных утилит, таких как Microsoft Kernel Debugger, BlueScreenView и других.

Установка WinDbg в Windows

Утилита, являющаяся отладчиком для юзермодных приложений и драйверов, позволяет проанализировать снимок памяти и выяснить, что спровоцировало BSoD. Поставляется она в составе пакета SDK для Windows 10, инсталлятор скачивается на сайте Microsoft. Для Семёрки и ранних версий систем WinDbg можно найти в пакете Microsoft Windows SDK for Windows 7 and NET Framework 4.

  • идём на страницу загрузки SDK (в зависимости от версии ОС выбираем нужный пакет, ссылки выше), скачиваем инсталлятор;
  • после скачивания файла запускаем процесс инсталляции;
  • выбираем первый вариант установки – на этот компьютер (второй предполагает загрузку для установки пакета на другие компьютеры);
  • оставляем путь установки по умолчанию или меняем, если это необходимо;
  • соглашаемся с условиями лицензионного соглашения;
  • можно поставить весь пакет или выбрать в списке только отладчик Debagging Tools for Windows.

Анализ аварийного дампа памяти в WinDbg

Перед анализом memory dump необходимо выполнить некоторые настройки. Для работ с софтом понадобится пакет символов отладки Debugging Symbols, загруженный с учётом версии и разрядности системы.

Можно настроить извлечение утилитой символов из интернета, что безопасно, поскольку используется официальный ресурс компании Майкрософт.

Ассоциирование файлов .dmp с WinDbg

Для того чтобы объекты при нажатии на них открывались посредством утилиты:

    В консоли командной строки, запущенной от имени администратора (например, через меню Пуск) выполняем команды (зависимо от разрядности ОС):

cd C:\Progran Files (x86)\Windows Kits\10\Debuggers\x64
exe –IA

cd C:\Progran Files (x86)\Windows Kits\10\Debuggers\x86
exe –IA

Теперь файлы типов .DMP, .HDMP, .MDMP, .KDMP, .WEW будут ассоциироваться с приложением.

Настройка сервера отладочных символов

Отладочные символы, которые генерируются в процессе компиляции приложения вместе с исполняемым файлом, нужны при отладке. Настраиваем WinDbg на извлечение символов из сети:

  • в окне WinDbg жмём «File» и выбираем «Symbol Fie Path…» или жмём Ctrl+S;
  • указываем путь для загрузки, прописав строчку:

  • применяем корректировки нажатием «File» – «Save Workspace».
  • Анализ memory dump в WinDbg

    Чтобы перейти к процедуре, открываем объект в утилите (File – Open Crash Dump) или, если предварительно настраивались ассоциации файлов, открываем элемент щелчком мыши. Утилита начнёт анализировать файл, затем выдаст результат.

    В окне предполагается ввод команд. Запрос «!analyze –v» позволит получить более детальные сведения о сбое (STOP-код, имя ошибки, стек вызовов команд, приведших к проблеме и другие данные), а также рекомендации по исправлению. Для остановки отладчика в меню программы жмём «Debug» – «Stop Debugging».

    Как удалить файлы дампа памяти

    Если понадобилось удалить memory dump, это можно выполнить вручную, пройдя по пути месторасположения объекта на диске. Так, в системном каталоге Windows нужно найти и удалить файл MEMORY.DMP, а также элементы в каталоге Minidump. Кроме того, можно использовать штатный инструмент системы «Очистка диска»:

    • вызываем консоль «Выполнить» (Win+R) и вводим команду «Cleanmgr», чтобы перейти к службе;
    • жмём кнопку очищения системных файлов, затем находим и отмечаем в списке строчки, касающиеся memory dump. Если не нашлось, значит, их не создавали.

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

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

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

    Оригинальная версия продукта: Windows 10 — все выпуски, Windows Server 2012 R2
    Исходный номер КБ: 315263

    Если вы ищете сведения о отладки для Windows 8 или более поздней версии, проверьте средства отладки для Windows (WinDbg, KD, CDB, NTSD). Дополнительные сведения о небольшой свалке памяти вы можете получить в Small Memory Dump.

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

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

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

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

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

    Настройка типа сброса

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

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

    Нажмите кнопку Пуск и выберите Панель управления.

    Дважды щелкните систему, а затем нажмите параметры advanced system.

    Щелкните вкладку Advanced, а затем щелкните Параметры в статье Запуск и восстановление.

    В списке сведений о отладке записи нажмите кнопку Малая свалка памяти (64k).

    Чтобы изменить расположение папки для небольших файлов сброса памяти, введите новый путь в поле Dump File или в поле Каталог малых отвалов в зависимости от версии Windows.

    Средства для чтения небольшого файла сброса памяти

    Используйте утилиту проверки сброса (Dumpchk.exe) для чтения файла сброса памяти или проверки правильности создания файла.

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

    Дополнительные сведения об использовании службы проверки сброса в Windows NT, Windows 2000, Windows Server 2003 или Windows Server 2008 см. в статье Microsoft Knowledge Base 156280.Как использовать Dumpchk.exe для проверки файла сброса памяти.

    Дополнительные сведения об использовании службы проверки сброса в Windows XP, Windows Vista или Windows 7 см. в статье Microsoft Knowledge Base 315271.Как использовать Dumpchk.exe для проверки файла сброса памяти.

    Или вы можете использовать средство Отладка Windows (WinDbg.exe) или средство отладки ядра (KD.exe) для чтения небольших файлов сброса памяти. WinDbg и KD.exe включены в последнюю версию пакета Средств отладки для Windows.

    Чтобы установить средства отладки, см. в веб-странице Download and Install Debugging Tools for Windows. Выберите типичную установку. По умолчанию установщик устанавливает средства отладки в следующей папке:

    C:\Program Files\Debugging Tools for Windows

    Эта веб-страница также предоставляет доступ к загружаемым пакетам символов для Windows. Дополнительные сведения о символах Windows см. в странице Отладкас символами и веб-странице Пакеты символов Windows.

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

    Откройте файл сброса

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

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

    Изменение в инструменты отладки для папки Windows. Для этого введите следующее в командной подсказке и нажмите кнопку ENTER:

    Чтобы загрузить файл сброса в отладчик, введите одну из следующих команд и нажмите кнопку ENTER:

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

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

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

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

    • Содержимое папки I386 в компакт-диске Windows копируется в C:\Windows\I386 папку.
    • Ваш файл сброса называется C:\Windows\Minidump\Minidump.dmp .

    Пример 2. Если вместо командной строки вы предпочитаете графическую версию отладки, введите следующую команду:

    Изучение файла сброса

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

    • Команда !analyze -show отображает код ошибки Stop и его параметры. Код ошибки Stop также известен как код проверки ошибок.
    • Команда !analyze -v отображает многословный вывод.
    • В lm N T команде перечислены указанные загруженные модули. Выход включает состояние и путь модуля.

    Команда расширения !drivers отображает список всех драйверов, загруженных на компьютере назначения, а также сводную информацию об использовании их памяти. Расширение !drivers устарело в Windows XP и более поздней версии. Чтобы отобразить сведения о загруженных драйверах и других модулях, используйте lm команду. Команда lm N T отображает сведения в формате, аналогичном старому расширению драйверов!.

    Справки по другим командам и полному синтаксису команд см. в документации по отладки средств справки. Документация о помощи средствам отладки можно найти в следующем расположении:

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

    Если у вас есть проблемы, связанные с символами, используйте утилиту Symchk, чтобы убедиться, что правильные символы загружены правильно. Дополнительные сведения об использовании Symchk см. в рубрике Отладка с символами.

    Упрощение команд с помощью пакетного файла

    После определения команды, необходимой для загрузки свалок памяти, можно создать пакетный файл для проверки файла сброса. Например, создайте пакетный файл и назови его Dump.bat. Сохраните его в папке, где установлены средства отладки. Введите следующий текст в пакетный файл:

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

    Читайте также:  Панель bing для windows 10 что это
    Оцените статью