Windows, Синий экран (BSOD) и борьба с его причинами

Дамп памяти (снимок состояния оперативной, содержащий отладочную информацию) — то, что часто оказывается наиболее полезными при возникновении синего экрана смерти (BSoD) для диагностики причин возникновения ошибок и их исправления. Дамп памяти сохраняется в файл C:WindowsMEMORY.DMP, а мини дампы (малый дамп памяти) — в папку C:WindowsMinidump (подробнее об этом далее в статье).

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

Общие сведения об аварийном дампе памяти

Все Windows-системы при обнаружении фатальной ошибки делают аварийный дамп (снимок) содержимого оперативной памяти и сохраняет его на жесткий диск. Существуют три типа дампа памяти:

Полный дамп памяти – сохраняет все содержимое оперативной памяти. Размер снимка равен размеру оперативной памяти + 1 Мб (заголовок). Используется очень редко, так как в системах с большим объемом памяти размер дампа будет слишком большим.

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

Дамп памяти ядра – сохраняет информацию оперативной памяти, касающуюся только режима ядра. Информация пользовательского режима не сохраняется, так как не несет в себе информации о причине краха системы. Объем файла дампа зависит от размера оперативной памяти и варьируется от 50 Мб (для систем с 128 Мб оперативной памяти) до 800 Мб (для систем с 8 Гб оперативной памяти).

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

Настройка системы

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

Проделав все манипуляции, после каждого BSoD в папке C:WINDOWSMinidump будет сохраняться файл с расширение .dmp. Советую ознакомиться с материалом «Как создать папку». Также можно установить галочку на “Заменить существующий файл дампа”. В этом случае каждый новый аварийный дамп будет записываться поверх старого. Я не советую включать данную опцию.

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

Анализ аварийного дампа памяти с помощью программы BlueScreenView

Итак, после появления синего экрана смерти система сохранила новый аварийный дамп памяти. Для анализа дампа рекомендую использовать программу BlueScreenView. Её можно бесплатно скачать тут. Программа довольно удобная и имеет интуитивный интерфейс. После её установки первое, что необходимо сделать – это указать место хранение дампов памяти в системе. Для этого необходимо зайти в пункт меню “Options” и выбрать “Advanced Options”. Выбираем радиокнопку “Load from the following Mini Dump folder” и указываем папку, в которой хранятся дампы. Если файлы хранятся в папке C:WINDOWSMinidump можно нажатием кнопки “Default”. Нажимаем OK и попадаем в интерфейс программы.

Программа состоит из трех основных блоков:

  1. Блок главного меню и панель управления;
  2. Блок списка аварийных дампов памяти;
  3. В зависимости от выбранных параметров может содержать в себе:
  • список всех драйверов находящихся в оперативной памяти до появления синего экрана (по умолчанию);
  • список драйверов находящихся в стеке оперативной памяти;
  • скриншот BSoD;
  • и другие значения, которые мы использовать не будем.
Анализ дампа памяти

В блоке списка дамп памяти (на рисунке помечен цифрой 2) выбираем интересующий нас дамп и смотрим на список драйверов, которые были загружены в оперативную память (на рисунке помечен цифрой 3). Розовым цветом окрашены драйвера, которые находились в стеке памяти. Они то и являются причиной появления BSoD. Далее переходите в Главное меню драйвера, определяйте к какому устройству или программе они принадлежат. В первую очередь обращайте внимание на не системные файлы, ведь системные файлы в любом случае загружены в оперативной памяти. Легко понять, что на изображении сбойным драйвером является Скажу, что это программа была специально запущена для вызова Stop ошибки. После определения сбойного драйвера, необходимо его либо обновить, либо удалить из системы.

Читайте также:  Как включить/отключить родительский контроль в Windows 10

Для того чтобы программа показывала список драйверов находящихся в стеке памяти во время возникновения BSoD необходимо зайти в пункт меню “Options” кликаем на меню “LowerPaneMode” и выбираем “OnlyDriversFoundInStack” (или нажмите клавишу F7), а для показа скриншота ошибки выбираем “BlueScreeninXPStyle” (F8). Что бы вернуться к списку всех драйверов, необходимо выбрать пункт “AllDrivers” (F6).

Буду признателен, если воспользуетесь кнопочками:

Часть вторая — анализ мини-дампа

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

Для этого нам понадобится установить Debugging Tools for Windows и скачать утилиту непосредственно для расшифровки файла дампа

(зеркало 1, зеркало 2)

Когда установили Debugging Tools, копируем в корень диска C:\ Запускаем командную строку «Пуск» -«Выполнить», вписываем команду cmd

При таком размещении файла дампа, надо запустить «Командную строку» обязательно от имени администратора:

Теперь в черном окне CMD пишем следующее:

c:\ c:\Windows\Minidump\

где c:\Windows\Minidump\ — файл мини-дампа.

Результат декодирования ошибки выглядит так:

Crash date:         Tue Jan  1 15:35: 2013 (GMT+4)

— дата события

Stop error code:    0xD1

— код ошибки останова системы

Process name:      

— имя процесса вызвавшего остановку системы

Probably caused by: ( L1E62x64+76b8 )

— вероятный виновник остановки

Чтобы окончательно локализовать источники проблем, следуем такому комиксу:

Ищем найденный в дампе файл драйвера на системном диске:

Открываем свойства файла драйвера:

На вкладке «Подробно» в поле «Описание» и «Название продукта» видим то, что нам надо:

В меню Пуск-Мой компьютер, открываем элемент «Управление» и далее «Диспетчер устройств»:

В диспетчере устройств находим адаптер из описания драйвера:

А в диспетчере задач находим нужный процесс:

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

Теперь осталось лишь избавиться от любого из виновников сбоя.

p.s.

Использованные источники:

p.p.s

Думаю также вам будет интересно узнать об утилите bluescreenview, которая также позволяет изучать содержимое файлов мини-дампа.

Удачи!

Аварийный дамп памяти

:   / 303

720654

Все Windows-системы при обнаружении фатальной ошибки делают аварийный дамп (снимок) содержимого оперативной памяти и сохраняет его на жесткий диск. Существуют три типа дампа памяти:

Читайте также:  Не работает поиск в Windows 10: как исправить

Полный дамп памяти – сохраняет все содержимое оперативной памяти. Размер снимка равен размеру оперативной памяти + 1 Мб (заголовок). Используется очень редко, так как в системах с большим объемом памяти размер дампа будет слишком большим.

Дамп памяти ядра – сохраняет информацию оперативной памяти, касающуюся только режима ядра. Информация пользовательского режима не сохраняется, так как не несет в себе информации о причине краха системы. Объем файла дампа зависит от размера оперативной памяти и варьируется от 50 Мб (для систем с 128 Мб оперативной памяти) до 800 Мб (для систем с 8 Гб оперативной памяти).

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

Настройка системы

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

Проделав все манипуляции, после каждого BSoD в папке C:\WINDOWS\Minidump будет сохраняться файл с расширение .dmp. Советую ознакомиться с материалом «Как создать папку». Также можно установить галочку на “Заменить существующий файл дампа”. В этом случае каждый новый аварийный дамп будет записываться поверх старого. Я не советую включать данную опцию.

Анализ аварийного дампа памяти с помощью программы BlueScreenView

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

Аварийный дамп памяти

После её установки первое, что необходимо сделать – это указать место хранение дампов памяти в системе. Для этого необходимо зайти в пункт меню “Options” и выбрать “Advanced Options”. Выбираем радиокнопку “Load from the following Mini Dump folder” и указываем папку, в которой хранятся дампы.

Если файлы хранятся в папке C:\WINDOWS\Minidump можно нажатием кнопки “Default”. Нажимаем OK и попадаем в интерфейс программы.

Программа состоит из трех основных блоков:

  1. Блок главного меню и панель управления;
  2. Блок списка аварийных дампов памяти;
  3. В зависимости от выбранных параметров может содержать в себе:
  • список всех драйверов находящихся в оперативной памяти до появления синего экрана (по умолчанию);
  • список драйверов находящихся в стеке оперативной памяти;
  • скриншот BSoD;
  • и другие значения, которые мы использовать не будем.

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

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

Читайте также:  Подключение и установка SSD в компьютер или ноутбук

После определения сбойного драйвера, необходимо его либо обновить, либо удалить из системы.

Для того чтобы программа показывала список драйверов находящихся в стеке памяти во время возникновения BSoD необходимо зайти в пункт меню “Options” кликаем на меню “LowerPaneMode” и выбираем “OnlyDriversFoundInStack” (или нажмите клавишу F7), а для показа скриншота ошибки выбираем “BlueScreeninXPStyle” (F8). Что бы вернуться к списку всех драйверов, необходимо выбрать пункт “AllDrivers” (F6).

Буду признателен, если воспользуетесь кнопочками:

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

Отладочные символы (debug-символы или symbol files) – это блоки данных, генерируемые в процессе компиляции программы совместно с исполняемым файлом. В таких блоках данных содержится информация о именах переменных, вызываемых функциях, библиотеках и т.д. Эти данные не нужны при выполнении программы, но полезные при ее отладке. Компоненты Microsoft компилируются с символами, распространяемыми через Microsoft Symbol Server.

Настройте WinDBG на использование Microsoft Symbol Server:

  • Откройте WinDBG;
  • Перейдите в меню File –>Symbol File Path;
  • Пропишите строку, содержащую URL для загрузки символов отладки с сайта Microsoft и папку для сохранения кэша: SRV*E:\Sym_WinDBG* В примере кэш загружается в папку E:\Sym_WinDBG, можете указать любую.
  • Не забывайте сохранить изменения в меню File –>Save WorkSpace;

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

Если подключение к интернету отсутствует, то загрузите предварительно пакет символов с ресурса Windows Symbol Packages.

Чем открыть файл в формате DMP

Расширение DMP может быть нескольких основных исполнений, в частности:

  • DMP формат является dump-файлом, генерируемым ОС в автоматическом режиме в результате появления какой-либо критической ошибки. Это своеобразный скриншот памяти устройства в момент, когда ОС дает сбой. Dump-файл с ошибкой ОС имеет формат , где в наименовании указывается конкретный месяц, год и дата фиксации сбоя.
  • Для непосредственной генерации дампа, а не просто перезагрузки ОС, следует выполнить следующую последовательность действий:

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

    • формат DMP – результат деятельности программного комплекса баз данных ORACLE. Такой файл предназначен для резервного хранения схем и БД (актуально только на момент его генерации).
    • dump-файл программы Steam. Предназначен для контроля и управления над игровыми приложениями.
    • DMP формат – файл-карта, как результат генерации утилиты Dream Maker.

    Программы для открытия и создания DMP файлов

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

    • Visual Studio, Dumpflop Utility, Kernel Debug, Bluescreenview, Debug Tools, (DMP файл – генерируемый операционной системой в автоматическом режиме в случае возникновения какой-либо критической ошибки или сбоя);
    • Oracle Dump Viewer (DMP файл – БД ORACLE);
    • Steam (DMP файл – клиент для контроля и управления над игровыми приложениями);
    • Dream Maker (DMP файл – файл-карта).