Открыть дамп памяти windows 7. BSoD: Анализ дампов памяти

В ОС Windows очень часто случаются ошибки, даже в случае с «чистой» системой. Если обычные ошибки программ решить можно (появляется сообщение о недостающем компоненте), то исправить критические ошибки будет намного сложнее.

Что такое дамп памяти в Windows

Для решения проблем с системой обычно используют аварийный дамп памяти – это снимок части или полного объема оперативной памяти и помещение его на энергонезависимый носитель (жёсткий диск). Другими словами, содержимое оперативной памяти полностью или частично копируется на носитель, и пользователь может провести анализ дампа памяти.

Существует несколько видов дампов памяти:

Малый дамп (Small Memory Dump) – сохраняет минимальный объем ОЗУ, где находятся сведения по критическим ошибкам (BSoD) и компонентах, которые были загружены во время работы системы, например, драйвера, программы. MiniDump хранится по пути C:\Windows\Minidump.

Полный дамп (Complete Memory Dump) – сохраняется полный объем ОЗУ. Это значит, что размер файла будет равен объему оперативной памяти. Если места на диске мало, будет проблематично сохранить, например, 32 Гб. Также бывают проблемы с созданием файла дампа памяти более 4 Гб. Данный вид используется очень редко. Храниться по пути C:\Windows\MEMORY.DMP.

Дамп памяти ядра – сохраняется только информация, относящаяся к ядру системы.

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

Информация в реестре

Если заглянуть в реестр Windows, то можно обнаружить некоторые полезные параметры снимков. Щелкаем сочетание клавиш Win+R, вводим команду regedit и открываем следующие ветки:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

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

  • AutoReboot – активация или отключение перезагрузки после создания синего экрана смерти (BSoD).
  • DumpFile – название видов дампов и расположение.
  • CrashDumpEnabled – номер создаваемого файла, например, число 0 – дамп не создается; 1 – создание полного дампа; 2 – создание дампа ядра; 3 – создание малого дампа.
  • DumpFilters – параметр позволяет добавить новые функции перед созданием снимка. Например, шифрование файла.
  • MinidumpDir – название малого дампа и его расположение.
  • LogEvent – активация записи сведений в системный журнал.
  • MinidumpsCount – задать количество создаваемых малых дампов. (Превышение этого количества будет уничтожать старые файлы и заменять их).
  • Overwrite – функция для полного дампа или системного. При создании нового снимка, предыдущий будет всегда заменяться на новый.
  • DedicatedDumpFile – создание альтернативного файла снимка и указание его пути.
  • IgnorePagefileSize – используется для временного расположения снимка, без использования файла подкачки.

Как это работает

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

Обычно файл сохраняется в выделенном для файла подкачки блоке жёсткого диска, после появления BSoD файл перезаписывается в тот вид, который пользователь сам и настроил (Малый, полный или дамп ядра). Хотя, в современных ОС участие файла подкачки не обязательно.

Как включить дампы

В Windows 7 :

В Windows 8 и 10 :

Здесь процесс немного похож, в сведения о системе можно попасть точно также, как в Windows 7. В «Десятке» обязательно открываем «Этот компьютер », нажимаем по свободному месту правой кнопочкой мышки и выбираем «Свойства ». По-другому туда можно попасть через Панель управления.

Второй вариант для Wi ndows 10 :


Следует заметить, что в новых версиях Windows 10 появились новые пункты, которых не было в «семерке»:

  • Малый дамп памяти 256 КБ – минимальные данные о сбое.
  • Активный дамп – появился в десятой версии системы и сохраняет только активную память компьютера, ядра системы и пользователя. Рекомендуется использовать на серверах.

Как удалить дамп

Достаточно зайти в каталог, где хранятся снимки памяти и попросту удалить их. Но есть и другой способ удаления – использование утилиты очистки диска:

Если никаких пунктов обнаружено не было, возможно дампы не были включены.

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

Анализ дампа памяти при помощи WinDbg

Скачиваем с официального сайта Microsoft данную программу на шаге 2, где описана «Установка WDK » — https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk .

Чтобы работать с программой еще понадобиться специальный пакет отладочных символов. Он называется Debugging Symbols , раньше его можно было скачать с сайта Microsoft, но теперь они отказались от этой идеи и придется использовать функцию программы File — «Symbol File Path », куда следует вписать следующую строчку и нажать ОК:

set _NT_SYMBOL_PATH=srv*DownstreamStore*https://msdl.microsoft.com/download/symbols

Если не сработало, пробуем вот эту команду:

SRV*%systemroot%\symbols*http://msdl.microsoft.com/download/symbols

Снова нажимаем пункт «File» и выбираем опцию «Save Workspace».

Утилита настроена. Остается указать путь до файлов дампов памяти. Для этого нажимаем File и щелкаем опцию «O pen Crash Dump ». Расположение всех дампов указано в начале статьи.

После выбора закончится анализ и проблемный компонент автоматически будет выделен. Для получения большего количества информации в этом же окошке можно ввести такую команду: !analyze –v

Анализ с помощью BlueScreenView

Загрузить инструмент бесплатно можно с этого сайта — http://www.nirsoft.net/utils/blue_screen_view.html . Установка не требует каких-то навыков. Используется только в Windows 7 и выше.

Запускаем и настраиваем. Нажмите «Настройки» (Options) – «Дополнительные параметры » (Advanced Options). Выберите первый пункт «Загружать МиниДампы из этой папки » и указываем каталог — C:\WINDOWS\Minidump . Хотя можно просто нажать кнопку «По умолчанию». Нажимаем ОК.

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

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

Теперь нажимаем «Файл» и выбираем, например, пункт «Найти в Go ogle код ошибки + драйвер ». Если нашли нужный драйвер, установите и перезагрузите компьютер. Возможно ошибка исчезнет.

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

В этой статье мы рассмотрим базовые действия, которые помогут вам самостоятельно определить причину возникновения BSOD и, как следствие, устранить ее.

Проводить анализ дампов памяти мы будем при помощи отладчика WinDBG, поэтому, прежде чем начать, вам потребуется установить отладчик и настроить его.
Как это сделать вы узнаете из статьи

Интерфейс WinDBG

Когда вы откроете файл дампа памяти, то увидите такое окно:

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

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

После того как символы будут загружены и отладчик будет готов к анализу файла дампа вы увидите сообщение Followup: MachineOwner в нижней части текстового окна.

Теперь все готово для начала анализа дампа памяти. Все команды вводятся в командную строку, расположенную в нижней части окна.

Анализ дампа памяти

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

Коды ошибок всегда указываются в шестнадцатеричном значении и имеют вид 0xXXXXXXXX . Указываются же коды ошибок одним из следующих вариантов:

  • STOP: 0x0000009F
  • 03.06.2015 0009F

Справочник по кодам ошибок: Windows Dev Center Bug Check Code Reference

Команда!thread и анализ драйверов

Самая распространенная причина возникновения BSOD - это сторонние драйверы (производителей устройств). Для того, чтобы увидеть фигурирует ли драйвер устройства в дампе нам понадобится просмотреть стек.
Выполните команду ! thread и найдите в результатах ее выполнения Base и Limit , и их шестнадцатеричные значения.
В рассматриваемом примере они такие:
Base fffff80000b9b000 Limit fffff80000b95000

В командной строке напечатайте dps затем через пробел шестнацатеричное значение Limit , а за ним значение Base . В данном случае важен порядок указания значений - он должен быть обратным отображаемому в результате выполнения команды!thread.

dps fffff80000b95000 fffff80000b9b000

Когда стек будет загружен вы увидите множество строк с текстом и значениями. Среди результатов выполнения команды поищите сообщения об ошибках с указанием на драйверы. В рассматриваемом примере это драйвер igdkmd64.sys и iaStorA.sys а в отладчике это выглядит так:

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

driverquery /v > "%USERPROFILE%\Desktop\drivers.txt"

После выполнения команды на рабочем столе будет создан файл drivers.txt, содержащий подробную информацию обо всех установленных в системе драйверах, с их описанием и путями расположения файла драйвера.

В рассматриваемом примере вероятными виновниками возникновения BSOD оказались драйверы видеокарты Intel (igdkmd64.sys) и SATA/AHCI-контроллера (iaStorA.sys).

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

Команда!analyze -v

Команда!analyze отображает информацию о текущем исключении или код ошибки, а параметр -v формирует подробный вывод данных. В рассматриваемом случае нам понадобятся данные о заблокированных IRP пакетах в значении Arg4 , и значения FAILURE_ BUCKET_ ID и BUCKET_ ID .

Выполните команду !irp добавив значение из Arg4

!irp ffffe001eb781600

В результате выполнения команды был определен проблемный драйвер - Rt630x64.sys

В данном случае драйвер Rt630x64.sys относится к сетевому адаптеру и вызывает ошибку DRIVER_POWER_STATE_FAILURE при завершении работы системы.
Для получения подробных сведений о файле драйвера выполните команду

Как видите дата драйвера довольно старая и стоит его обновить для устранения проблемы.

Заключение

Цель этой статьи рассказать об алгоритме анализа дампа памяти для выявления причины BSOD. В рамках одной статьи невозможно рассмотреть все варианты анализа, а многие тонкости приходят только с опытом. Был рассмотрен всего один код ошибки т.к. последовательность ее анализа показалась мне наиболее интересной, в отличие от ошибки 0x124, например, которая в подавляющем большинстве случаев говорит об аппаратной неполадке, или 0x116, свидетельствующей о проблеме с драйвером видео или неполадке видеокарты в 95% случаев.

Если у вас не получилось выяснить причину BSOD или попросту нужна быстрая и квалифицированная помощь в анализе проблемы, вы всегда можете обратиться в форум

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

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

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

Как исправить синий экран ошибка дампа памяти?

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

1. Проверить диспетчер устройств

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

В таких случаях существует только одно решение — удалить предыдущие версии аппаратного или программного обеспечения, которое является причиной ошибки и заменить его новой версией, переустановив его.

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

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

2. Восстановление реестра Windows

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

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

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

Оно автоматически сканирует и исправляет проблемы для любого вопроса, касающегося реестра операционной системы.

3. Проверить модули памяти

Иногда синий экран и какое-то сообщение об ошибке также появляется, которое обычно гласит: “UNEXPECTED_KERNEL_MODE_TRAP”, такая ошибка обычно означает, что ошибка возникает в основном из-за проблемы с памятью.

Для решения вопроса с памятью вашего компьютера, необходимы два основных модуля которые могут быть проверены SIMM и CMOS. SIMM стенды для одиночных модулей встроенной памяти, который обрабатывает совместимость скорости работы операционной системы и КМОП расшифровывается как Комплементарный металло-оксидный полупроводник, которые должны быть установлены правильно согласно конфигурации оперативной памяти.

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

4. Ремонт жесткого диска, который поврежден

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

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

5. Проверка на вирусы

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

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

Это может привести к синему экрану смерти, что, и конечном счете, начинается демпинг физической памяти, и снова и снова перезапуск системы.

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

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

Причиной критических ошибок Windows, сопровождаемых синими экранами (BSOD), часто является драйвер — вновь установленный или поврежденный. Определив, какой именно драйвер служит причиной ошибки, можно приступать к устранению проблемы: обновить драйвер, откатиться к более ранней версии, переустановить или удалить приложение, установившее драйвер и т. д. Не всегда название драйвера отображается на синем экране. Однако существует очень простой способ, позволяющий с помощью дампа памяти определить проблемный драйвер за пару минут.

Шаг 1 — Включение записи дампов памяти

Сначала нужно убедиться, что запись дампов включена. Для этого нужно открыть свойства системы, нажав комбинацию клавиш Win+Pause , [в Vista щелкнуть ссылку Дополнительные параметры системы ], перейти на вкладку Дополнительно , и наконец нажать кнопку .

Малых дампов памяти должно быть достаточно для наших целей.

Обратите внимание на путь к папке, куда они будут сохраняться при возникновении критической ошибки.

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

Шаг 2 — Анализ дампов с помощью утилиты MinDumper

Рассказ об утилите вы найдете в этой статье .

  1. Загрузите и установите Debugging Tools for Windows. Они входят в состав веб-установщика Windows SDK , где после запуска в нужно выбрать Debugging Tools в разделе Common Utilities.
  2. Загрузите сценарий (kdfe.cmd), который написал Александр Суховей и опубликовал на ресурсе sysadmins.ru (поскольку живую ссылку мне там найти не удалось, предлагаю свою). Распакуйте архив в любую папку.
    Примечание . В случае нестандартного расположения папки Program Files вам может потребоваться указать в kdfe.cmd путь к папке, в которую установлены средства Debugging Tools for Windows. Используйте переменную dbgpath в строке 41.

Шаг 3 — Анализ дампа памяти

Теперь все сводится к выполнению одной команды. Откройте командную строку и перейдите в папку, в которую вы распаковали kdfe.cmd . Запустите файл, указав в качестве параметра путь к файлу дампа памяти (в примере ниже файл называется Mini1110307-01.dmp )

Файл дампа памяти сохраняется при возникновении ошибок СТОП (или Голубых экранов смерти, BSOD) . Посмотрим как настраивается сохранение дампа памяти в Windows 7.

Нажимаем правой кнопкой мыши значек Компьютер (Computer) в контекстном меню выбираем Свойства (Properties) .

В левой колонке выбираем Дополнительные параметры системы (Advanced system settings) .

В окне Системные параметры (System Properties) выбираем вкладку Дополнительно (Advanced) , в секции Загрузка и Восстановление (Startup and Recovery) нажимаем Параметры (Settings ).

В окне Загрузка и восстановление (Startup and Recovery ) мы настраиваем расположение дампа файла и его имя, а также другие параметры, связанные с загрузкой и восстановлением системы.

Прописываем путь к файлу в текстовом поле Файл дампа (Dump file).

%SystemRoot% - переменная окружения , которая заменяется системой на полный путь к папке Windows, в которой находятся системные файлы.

Нажимаем OK для сохранения настроек (если были произведены изменения).

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