Содержание
- 1 Что происходит с компьютером при появлении синего экрана?
- 2 Расшифровка STOP-кодов
- 3 Причины BSoD и практические руководства по решению проблемы
- 4 Синий экран при установке Windows 7
- 5 «Синий фонарь» включается неожиданно
- 6 Что можно узнать из информации на синем экране
- 7 Как включить функцию создания и сохранения малых дампов памяти
- 8 Как анализировать содержимое минидампов
- 9 Причины синего экрана Windows, узнаем за минуту
- 10 Причины синего экрана Windows, узнаем за минуту
- 11 Назначение синего экрана
- 12 Что вызывает синие экраны смерти
- 13 Примеры распространенных синих экранов
- 14 Утилиты диагностики синего экрана
- 15 Где искать файл дампа (MEMORY.DMP)
- 16 Различия между файлами полного дампа памяти и файлами мини дампа
- 17 Узнаем причину синего экрана в BlueScreenView
- 18 Выявляем причины синего экрана windows в Microsoft Kernel Debugger
- 19 Установка Microsoft Kernel Debugger
- 20 Диагностика BSOD в WinDbg
BSoD (экран смерти) — защитный механизм, который останавливает операционную систему при некорректной работе системного кода на уровне ядра. Как разобраться в причине появления синего экрана смерти и исправить ошибки, рассказывается в этой статье.
Что происходит с компьютером при появлении синего экрана?
Прежде всего следует понять, откуда берётся BSoD. Для этого стоит обратиться к структурной схеме Windows-архитектуры (представлена в упрощённом виде).Исполняемый код функционирует как на пользовательском уровне, так и на уровне ядра. В первом осуществляется исполнение обычных приложений, таких как веб-браузеры, графические, офисные редакторы и т. п. Эти пользовательские приложения не могут иметь доступ к критическим системным параметрам.На уровне ядра работают коды ОС, драйверов, осуществляются другие функции. Разделение режимов необходимо для безопасного функционирования операционной системы. В ином случае, каждый мелкий баг любой пользовательской утилиты приводил бы к ошибкам в ОС.Blue Screen of Death (BSoD) — своего рода защитный механизм, срабатывающий при проявлении неправильно работающего системного кода на уровне ядра. При этом функционирование ОС прекращается и на панели монитора возникает знакомый многим «фатальный» экран синего цвета. При этом «семёрка» удаляет абсолютно все не сохранённые данные.При возникновении синего экрана смерти у пользователя в течение какого-то времени есть возможность изучить информацию, описывающую ошибку, затем происходит перезагрузка системы. Часто перезапуск компьютера носит цикличный характер, а синий экран со STOP-ошибкой появляется всего лишь на несколько секунд.Отключить цикличную перезагрузку ПК с целью спокойного и внимательного изучения сообщения BSoD можно следующим образом:
- Через «Пуск» войдите в «Компьютер», а далее — в «Свойства».
- Переходите в «Дополнительные параметры».
- В появившемся блоке нажимайте на «Параметры» в части «Загрузка и восстановление».
- Отказывайтесь от выполнения автоматической перезагрузки, убрав выделение с соответствующего пункта в части «Отказ системы».
Расшифровка STOP-кодов
Рассмотренная выше процедура позволяет спокойно исследовать содержимое консоли. Информация расшифровывается следующим образом:
- 3 — STOP-код в шестнадцатеричном виде.
В некоторых случаях может указываться параметр ошибки, обозначение сбойных драйверов, адресация места возникновения ошибки.Так называемые STOP-коды требуют более детального изучения, потому что являются точным обозначением конкретной ошибки. Некоторые из них в качестве примера рассмотрены в таблице:
STOP-код | Название ошибки | Описание |
0x00000002 | DEVICE_QUEUE_NOT_BUSY | Очередь устройства должна была быть занята, но этого не произошло. Вероятно, неисправность зависит от состояния аппаратных средств или драйверов устройств. |
0x00000004 | INVALID_DATA_ACCESS_TRAP | Недопустимая ошибка доступа к данным. Возможно, неполадки связаны с состоянием аппаратных средств или драйверов устройств. |
0x0000000B | NO_EXCEPTION_HANDLING_SUPPORT | Обработка исключений не поддерживается. Часто связано с программными ошибками драйверов ОС. |
0x00000019 | BAD_POOL_HEADER | Недопустимый заголовок пула. Скорее всего, имеются серьёзные нарушения в системных NTFS-файлах. |
0x0000001A | MEMORY_MANAGEMENT | Проблема с управлением памяти. Вероятно, имеются серьёзные ошибки управления системной памятью. |
0x00000022 | FILE_SYSTEM | Проблема с файловой системой. Возможно, присутствуют неполадки в функционировании файловой системы. |
0x00000026 | CDFS_FILE_SYSTEM | Ошибка файловой системы CDFS. Вероятная причина — неисправность жёсткого диска. Также имеется вероятность переполнения памяти. |
0x00000029 | SECURITY_SYSTEM | Проблемы с системой безопасности. Как правило, это говорит о нарушениях соответствующих процессов. |
0x0000004C | FATAL_UNHANDLED_HARD_ERROR | Неопознанная фатальная ошибка состояния. Могут быть повреждены файлы реестра либо системные DLL. |
0x00000051 | REGISTRY_ERROR | Ошибка системного реестра. Возможно, имеются проблемы с оборудованием либо повреждения системных файлов. |
Причины BSoD и практические руководства по решению проблемы
Синий экран смерти является следствием сбоя кода на уровне ядра. Чаще всего Blue Screen of Death возникает в результате следующих факторов:Причин, вызывающих фатальный экран в Windows, очень много, но чаще всего за BSoD стоят ответственные драйверы. По некоторым данным, до 65 % STOP-ошибок проявляются из-за их неправильной работы.Синий экран могут вызвать драйверы к видеокартам, принтерам, веб-камерам и т. д. Некоторые программы (антивирусные утилиты, виртуальные диски и т. п.), работающие на уровне ядра и использующие свои драйверы могут спровоцировать Blue Screen of Death.Поиск причины BSoD и их устранение иногда бывает сложно реализовать, так как Windows уходит в перезагрузку после непродолжительной работы в штатном режиме или сразу же после запуска какой-либо программы. В такой ситуации попробуйте запустить систему при помощи безопасного режима. Для его активации сделайте следующее:
- Запустите программу «Выполнить» через меню «Пуск» либо нажатием «горячих» клавиш Win + R.
- Введите либо скопируйте и вставьте системную команду msconfig. Согласитесь — «ОК».
- Перейдите в открывшемся окне на вкладку «Загрузка» и отметьте «Безопасный режим» в «Параметрах загрузки».
Безопасный режим не задействует многие системные процессы и не критичные для функционирования ОС аппаратные и программные компоненты. Оболочка и другие основные элементы системы работают, позволяя приступить к поиску и устранению неисправностей.
Драйверы
Обычно связанный со сбоем компонент достаточно легко определяется по соответствующему сообщению в системном трее. В диспетчере устройств такой элемент будет сопровождаться предупреждающей иконкой. Поиск и переустановка драйверов для проблемной части выполняется по следующей схеме:
- Откройте меню «Пуск». Запустите «Панель управления».
- В окне с названием «Все элементы управления» выберите «Диспетчер устройств».
- В появившемся диспетчере щелкните правой кнопкой мыши по проблемному устройству и далее «Обновить драйверы» в выпадающем списке.
- Выполните автоматический поиск программного обеспечения, активировав соответствующий пункт. Windows в автоматическом режиме произведёт поиск последних версий драйверов для устройства (потребуется активное интернет-подключение).
- Можете также произвести переустановку драйверов в ручном режиме. Для этого в диспетчере задач вновь щёлкните правой кнопкой мыши по устройству и выберите «Свойства» в выпадающем списке.
- В новом окне переместитесь на вкладку «Сведения», разверните список свойств компонента и выберите пункт «ИД оборудования» (ID — уникальный номер, присваиваемый каждому устройству в системе).
- Скопируйте первое значение в появившемся списке. Для выполнения дальнейших действий потребуется активный интернет на данном ПК либо другой компьютер (планшет, ноутбук, смартфон) с выходом в сеть.
- В любом веб-браузере откройте портал drp.su. Щёлкните по строке «Поиск драйверов» вверху экрана.
- Вставьте скопированный ранее код в строку поиска. Щёлкните кнопку «Найти».
- В случае успешного результата выберите версию и разрядность вашей операционной системы и скачайте драйвер по ссылке внизу экрана.
- Распакуйте скачанный пакет и вернитесь в диспетчер устройств. Вновь запустите обновление драйверов, но теперь выберите пункт «Выполнить поиск драйверов на этом компьютере».
- В окне «Обновление драйверов» щёлкните по кнопке «Обзор» и выделите папку с ПО. Нажмите «ОК» для продолжения.
- Щёлкните по кнопке «Далее» для инсталляции драйвера. По завершении процесса может потребоваться перезапуск компьютера.
Ошибки и повреждения жёсткого диска
При возникновении синего экрана смерти сканирование жёсткого диска на ошибки и повреждения проводится в приоритетном порядке после проверки драйверов. Перед этим рекомендуется скопировать все важные файлы на другой носитель. В Windows 7 имеется возможность сканирования и автоматического исправления ошибок и повреждённых блоков на диске штатными средствами:
- Для этого откройте проводник. Кликните правой кнопкой мыши по системному диску и выберите «Свойства» в выпадающем списке.
- В новом окне перейдите на вкладку «Сервис» и выполните проверку диска на наличие ошибок.
- Поставьте галочки в пунктах «Автоматически исправлять системные ошибки» и «Проверять и восстанавливать повреждённые сектора».
- Щёлкните «Расписание проверки диска» для активации соответствующего системного инструмента при следующем запуске компьютера.
Тотальную проверку жёсткого диска на ошибки и повреждения можно выполнить с помощью сторонних утилит, самой мощной из которых считается программа Victoria HDD/SSD. Приложение также умеет исправлять повреждённые сектора и обладает множеством других полезных функций.
Отсутствие места на диске
Иногда синий экран смерти возникает просто при недостатке места на системном диске. Исправить ситуацию можно следующим образом:
- Откройте свойства системного диска вашего компьютера. Информация о занятом и свободном пространстве носителя доступна на вкладке «Общие». Если значение свободного места близится к критическому, выполните очистку диска, активировав соответствующий инструмент.
- Windows может довольно долго выполнять оценку объёма доступного для освобождения места. На компьютере желательно при этом ничего не делать.
- По окончании процедуры в новом окне выберите, что вы хотите удалить. Нажмите «ОК».
- Подтвердите удаление выбранных файлов. Следует иметь в виду, что это действие является необратимым.
- Дождитесь завершения работы программы очистки. Возможно, после этого компьютер придётся перезагрузить.
Вирусы
Вирусный код — виновник множества проблем с компьютером. Заражение ПК нередко сопровождается перегрузкой аппаратной составляющей, неадекватной работой программной среды и, как следствие, возникновением BSoD. Проверить систему на наличие вирусов можно любым антивирусным сканером. В качестве примера рассмотрим как это сделать с помощью утилиты AVZ:
- Скачайте программу с официального сайта. Запустите exe-файл. AVZ не требует инсталляции и работает портативно.
- В появившемся окне программы щёлкните по вкладке «Файл» и активируйте «Обновление баз». Делать это необязательно, но желательно.
- Обновление баз требует активного интернет-подключения и может занять какое-то время. Не закрывайте окно программы в этот момент.
- По завершении обновления на вкладке «Область поиска» выберите диск для проверки. Отметьте пункт «Выполнять лечение». Активируйте запуск сканирования кнопкой «Пуск».
- Для глубокой проверки ПК переместитесь на вкладку «Параметры поиска». В блоке «Эвристический анализ» передвиньте движок в максимальное положение и поставьте галочку на «Расширенный анализ», в блоках Anti-RootKit и Winsock Service Provider отметьте все пункты. Активируйте сканирование (которое при полном анализе может длится очень долго, до нескольких часов) кнопкой «Пуск».
Любой антивирус затрагивает системные файлы на уровне ядра, поэтому его работа не исключает системных ошибок и даже полного краха Windows. По данной причине предварительно рекомендуется сделать копии всех важных файлов и сохранить их на другом носителе. По завершении работы сканера систему следует перезагрузить.
Некорректная установка обновлений
Обновления, приводящие к синему экрану смерти — не такая уж и редкость. Если вы видите BSoD сразу или спустя какое-то время после апдейта, рекомендуется удалить последние обновления. Инструкция, как это сделать, ниже:
- Откройте «Панель управления». Щёлкните «Программы и компоненты».
- В новом окне выберите «Установленные обновления», щёлкните правой кнопкой мыши по компоненту и нажмите «Удалить».
После удаления апдейтов можно попробовать установить их заново, либо временно отказаться от данной программной поддержки, дождавшись стабильного инсталляционного пакета.
Повреждённая оперативная память
Повреждение оперативной памяти почти всегда связано с железом. Проверить ОЗУ на предмет неполадок можно следующим образом:
- Запустите консоль программы «Выполнить». Введите либо скопируйте и вставьте mdsched.exe и нажмите кнопку «ОК».
- В появившемся окне выберите одно из двух действий на ваше усмотрение. Проверка компьютера на предмет неполадок с ОЗУ будет произведена после перезапуска или при следующем включении ПК.
Наличие проблем с ОЗУ говорит о том, что что-то не в порядке с самой планкой либо с соответствующим слотом. В большинстве случаев бывает достаточно почистить контакты на модуле и в разъёме, реже память приходится менять на новую.
Синий экран при установке Windows 7
Возникновение Blue Screen of Death нередко случается и при инсталляции системы. Особенно это актуально для машин с устаревшим железом. Проблема обычно никак не связана с поломками аппаратной части и в целом вполне решаема:Синий экран смерти в Windows 7 может возникать в результате самых разных проблем с аппаратной и программной конфигурациями ПК. Рассмотренные в статье пошаговые инструкции и дополнительные рекомендации раз и навсегда помогут избавиться от проблемы. С синими экранами смерти Windows (Blue Screen of Dead) не сталкивался, пожалуй, только редкий счастливчик. Большинство же из нас имело «счастье» лицезреть сие явление на собственном ПК. И очень многих оно вгоняет в панику: а вдруг компу крышка?
Чтобы не теряться, когда на экране внезапно засветился синий «фонарь», нужно уметь смотреть неприятелю «в лицо». То есть научиться выяснять, что привело к появлению BSoD’a, оценивать, насколько ситуация критична и знать, что делать, чтобы она больше не повторялась.
«Синий фонарь» включается неожиданно
В процессе работы Windows возникает множество ошибок, основную массу которых система устраняет незаметно для пользователя. Но среди них бывают и столь серьезные, что продолжение сеанса работы становится невозможным. Либо возникшая проблема угрожает Windows или железу необратимым повреждением. В таких случаях и выскакивает BSoD. Система как бы говорит пользователю: «Извини, друг, но у меня не было другого выбора. Если бы не аварийное завершение, произошло бы что-то нехорошее».
Синие экраны смерти возникают на любой стадии загрузки и работы компьютера. А приводит к ним следующее:
- Некорректная работа драйверов устройств из-за плохой совместимости с операционной системой, конфликта с другими драйверами, повреждения или изменения параметров.
- Некорректная работа программного обеспечения, чаще того, которое создает собственные службы – антивирусов, файерволов, эмуляторов оборудования и т. п.
- Заражение вредоносными программами.
- Аппаратные неполадки – неисправность оперативной памяти, дисковых накопителей, сетевых, звуковых адаптеров, видеоподсистемы, материнской платы, блока питания и другого оборудования.
- Нештатная работа устройств – перегрев, нестабильное питание, разгон.
- Нарушение обмена данными между устройствами – плохой контакт в разъемах, неисправные кабели и шлейфы.
- Несовместимость устройств.
Кстати, однократный BSoD после подключения к компьютеру нового девайса, если в дальнейшем всё работает без нареканий, можно считать нормой.
Что можно узнать из информации на синем экране
К счастью, подавляющее большинство синих экранов смерти вызывается программными сбоями, которые пользователь может устранить самостоятельно и относительно быстро, не прибегая к переустановке винды. Для программных неполадок характерны рандомные по времени BSoD’ы с одинаковыми или близкими по значению кодами ошибки.
Аппаратные «синяки» чаще возникают в одних и тех же условиях (например, при увеличении нагрузки на видеокарту, попытке открыть объемный файл) и имеют разные коды. Либо эти коды указывают на проблемы конкретного оборудования, как то: ошибки доступа к устройству, невозможность считывания, распознавания.
Однако эти признаки позволяют сделать лишь предположение о причине проблемы. Для ее уточнения необходимы более детальные сведения.
Синий экран смерти Windows 10 выглядит так:
Информацию об ошибке в нем несет строка «Stop code». В моем примере это CRITICAL PROCESS DIED.
Отсканировав телефоном QR-код, который находится здесь же, вы можете перейти на сайт windows com/stopcode, где содержатся общие советы по устранению сбоя. Подсказки от Microsoft иногда полезны, но о причине конкретно вашего случая там ничего нет, а значит, придется искать эти данные в другом источнике, например:
- На компьютерных форумах.
- В справочниках по различным кодам ошибок, в частности, на сайте Docs.Micosoft и в других местах.
Но и это не совсем полные сведения. Каждая ошибка уникальна, и самая точная информация о ней содержится в файле, который система сохраняет на диск в момент сбоя. А именно – в малом дампе памяти, которые мы и будет учиться анализировать. А чтобы такие файлы создавались, необходимо сделать несколько маленьких настроек.
Как включить функцию создания и сохранения малых дампов памяти
Для сохранения дампов памяти на жестком диске системе обязательно нужен файл подкачки, который должен находиться в том же разделе, где папка Виндовс. Его размер может быть от 2 Mb и больше.
- Зайдите через контекстное меню в свойства папки «Компьютер».
- Щелкните в открывшемся окошке кнопку «Дополнительные параметры системы».
- В разделе окна «Загрузка и восстановление» нажмите кнопочку «Параметры».
- В разделе нового окна «Отказ системы» из списка «Запись отладочной информации» выберите «Малый дамп памяти». В качестве места сохранения пусть будет указано «%SystemRoot%Minidump» (%systemroot% – это папка Windows).
На этом настройка закончена. Теперь информация о BSoD’ах будет сохраняться в вышеуказанном каталоге.
Как анализировать содержимое минидампов
Существует разные способы анализа аварийных дампов памяти Windows, но мы познакомимся с самым, на мой взгляд, удобным и простым – при помощи бесплатной утилиты BlueScreenView.
BlueScreenView особенно удобна тем, что не требует установки на компьютер громоздких пакетов Debugging Tools for Windows и может запускаться с любого носителя, достаточно кликнуть по одноименному файлу.
Интерфейс утилиты, несмотря на отсутствие русского языка, весьма дружелюбен. Главное окно разделено на 2 половины. Вверху – таблица минидампов – файлов из папки WindowsMinidump с датой и временем создания (колонка Crash Time), кодом ошибки в шестнадцатеричном формате (колонка Bug Check Code), четырьмя ее параметрами и другими сведениями. Впрочем, данные о конкретном сбое удобнее просматривать в отдельном окне, которое открывается двойным щелчком по интересующей строке (показано ниже). Главное окно дает больше информации о проблеме в целом, если BSoD’ы случались неоднократно. В нем легко отслеживать даты происшествий и коды ошибок, по повторяемости которых можно судить о характере неполадки.
Нижняя половина основного окна отображает драйвера, загруженные в память в момент аварийной ситуации по конкретному дампу, выделенному в списке. Строки, подсвеченные розовым, показывают содержимое стека потока событий, а упомянутые в них драйвера имеют самое прямое отношение к причине сбоя.
Разберем для примера один из малых дампов памяти с кодом ошибки 0x00000154. Скажу наперед, что он был вызван заломом шлейфа жесткого диска. Начиная анализ, посмотрим на список драйверов в стеке событий. Здесь нет ничего, кроме ntoskrnl.exe – ядра ОС Windows, которое, конечно, в проблеме не виновато – просто во время сбоя ни одного драйвера в стеке не было, а оно присутствует там всегда.
Далее заглянем в окошко параметров дампа. Здесь тоже не упомянуто ничего, кроме ntoskrnl.exe, значит, проблема вызвана не драйвером.
Идем дальше. Согласно сведениям на сайте Microsoft, ошибка 0x00000154 возникает, когда «компонент хранилища обнаруживает неожиданное исключение» и связана, как правило, с неполадками накопителей.
Для проверки этой версии оценим показатели S.M.A.R.T жесткого диска компьютера, которые отслеживает программа Hard Disk Sentinel. В день аварии здесь появились изменения следующих атрибутов:
- 188 Command Timeout.
- 199 UltraDMA CRC Error Count.
Оба указывают на ошибки передачи данных по интерфейсному кабелю. Тест поверхности харда и проверка файловой структуры отклонений не выявили, поэтому проблема была решена заменой шлейфа.
Рассмотрим еще один случай синего экрана смерти, причиной которого стал антивирус Касперского. BSoD периодически возникал во время запуска Windows 10 и при выходе компьютера из спящего режима.
Ошибка зафиксировалась несколько раз под одним и тем же кодом – 0x000000d1, который означает следующее: «драйвер режима ядра попытался получить доступ к странице памяти в процессе IRQL, который имел слишком высокий приоритет». На этот раз BlueScreenView указал на проблему в драйвере NDIS.sys, отвечающем за сетевые подключения. Значит, высока вероятность, что сбой имеет программное происхождение и связан с чем-то, что использует сеть.
Для выявления виновника потребовалось провести анализ автозагрузки приложений. На раннем этапе запуска операционной системы этого ПК стартовало не слишком много программ, которым разрешен доступ в Интернет, точнее, один Касперский. В подтверждение его причастности я снова обратилась к списку загруженных в память драйверов в BlueScreenView и среди того, что присутствует здесь обычно, обнаружила kl1.sys, принадлежащий антивирусу.
После удаления Касперского синие экраны больше не выскакивали.
Утилита BlueScreenView позволяет анализировать аварийные дампы памяти, полученные не только там, где она запущена, но и на другом компьютере. Для этого не нужно копировать их в папку Windows Minidump своего ПК, которая загружается в программу по умолчанию. Скопируйте их в любое удобное место, например, на рабочий стол, и укажите программе новое расположение каталога, который следует загружать.
Функция выбора папки с файлами дампов находится в меню «Options» – «Advanced Options» (открывается сочетанием клавиш Ctrl + O) и называется «Load from the following minidump folder».
Установив здесь отметку, кликните кнопку «Browse» и найдите нужный каталог в проводнике. Когда захотите вернуть настройки по умолчанию, нажмите «Default».
Вот так за считанные минуты можно узнать причину почти любого синего экрана смерти Windows, а исследовав минидампы в совокупности – выявить источник неполадки и успешно его устранить. Кстати, подсказки, какой драйвер чему принадлежит, можете найти здесь. Там же приведены рекомендации по решению связанных с ними проблем.
Как узнать причину синего экрана смерти Windows (BSoD) обновлено: Ноябрь 25, 2017 автором:
Причины синего экрана Windows, узнаем за минуту
Причины синего экрана Windows, узнаем за минуту
Добрый день! Уважаемые читатели и гости IT блога Pyatilistnik.org. В прошлый раз мы с вами научились исправлять ошибку 8050800C при обновлении Windows. Сегодня мы разберем не менее интересную и на мой взгляд, часто случающуюся ситуацию, когда у вас во время работы вашего устройства, будь то, ноутбук или компьютер, может и планшет, появляется синий экран смерти BSOD. Зачастую для людей это просто экран с непонятными кодами и записями, который не несет для них практически ни какой информации. Уверен, что на любом компьютерном форуме есть несколько топиков, где обсуждаются возможные причины, но по своему опыту могу сказать, что подавляющее количество людей, кто там дает советы мягко говоря некомпетентны, так как их советы чаще всего сводятся к банальностям, или же сами пострадавшие толком не могут предоставить диагностическую информацию, что и влечет за собой отсутствие решения и банальной переустановкe Windows. Сегодня я вам покажу инструмент, который поможет вам досконально понять причины синего экрана Windows 10 и другие ее аналоги.
Назначение синего экрана
В интернете уже сто миллионов раз давали, так что смысла нет повторятся, если в двух словах, то:
Обычно синий экран смерти, сокращенно называемый BSOD, является синей полноэкранной ошибкой, которая часто появляется после очень серьезного сбоя системы.
«Синий экран смерти» на самом деле является просто популярным названием для того, что технически называют сообщением остановки или ошибкой остановки.
Помимо официального названия, BSOD также иногда называют Blue Screen of Doom, экран проверки ошибок, сбой системы, ошибка ядра или просто ошибка синего экрана.
BSOD существуют с самого создания Windows и были гораздо более распространены тогда, только потому , что, так сказать, аппаратное обеспечение , программное обеспечение и сама Windows были более «глючными».
От Windows 95 до Windows 10 синий экран смерти не сильно изменился. Темно-синий фон и серебряный текст. Множество бесполезных данных на экране.
Что вызывает синие экраны смерти
Синие экраны обычно возникают из-за проблем с оборудованием вашего компьютера или из-за проблем с его программным обеспечением. Иногда они могут быть вызваны проблемами с программным обеспечением низкого уровня, работающим в ядре Windows. Обычные приложения чаще всего не могут вызывать синие экраны. Если приложение выходит из строя, оно вылетит с ошибкой, но не затронет операционную систему.
Синий экран появляется, когда Windows обнаруживает «STOP Error«. Этот критический сбой приводит к сбою Windows и прекращению работы. Единственное, что Windows может сделать в этот момент, это перезагрузить компьютер. Это может привести к потере данных, так как программы не имеют возможности сохранить свои открытые данные.
Когда появляется синий экран, Windows автоматически создает файл «minidump» или полный дамп Memory.DMP, который содержит информацию о сбое и сохраняет ее на диск. Вы можете просмотреть информацию об этих мини-дампах, чтобы помочь определить причину синего экрана.
Синие экраны также выглядят по разному, в зависимости от того, какую версию Windows вы используете. В Windows 7 и предыдущих версиях синий экран очень напоминал экран терминала, отображая всевозможную информацию.
В Windows 8 и 10 синие экраны намного проще.
В большинстве случаев вся информация появляющаяся на экране для вас бесполезна по нескольким вещам:
- Во первых вы чаще всего его даже не увидите, так как система после BSOD произведет перезагрузку
- Во вторых если говорить про blue screen of death если и будет запечатлен на экране будет иметь, чисто техническую информацию и мало, что вам сможет рассказать об истинных причинах сбоя, тут только поможет анализ дампа памяти.
Примеры распространенных синих экранов
Вот небольшой список, самых частых ситуаций с blue screen of death в Windows платформах, но поверьте его можно продолжать очень, и очень долго.
Ни на одном из них вы не выявите причину синего экрана, и мне кажется это правильным, что Microsoft пошла таким путем. Если кому-то интересно, то существуют и зеленые экраны ошибок и пурпурные экраны смерти, например в Vmware ESXI.
Утилиты диагностики синего экрана
Существует две утилиты. которые вам могут дать информацию, о причинах возникновения BSOD:
- Первая, бесплатная и на мой взгляд малополезная именуется, как BlueScreenView
- Вторая имеет максимальный инструментарий по диагностике, и разработана самим вендоров. Я говорю про Microsoft Kernel Debugger или WinDbg (Debugging Tools for Windows). Я не представляю, как можно без этой утилиты стопроцентно выявить из-за чего происходит «STOP Error» в системе. В данной статья, я сделаю подробный разбор данного инструмента.
Где искать файл дампа (MEMORY.DMP)
Перед тем, как мы научимся выявлять причины BSOD, я хочу вам напомнить, где располагается нужные для диагностики файлы. Определить нужное расположение можно из окна настроек системы. Для этого перейдите в свойства моего компьютера или нажмите одновременно клавиши WIN и Pause Break.
Далее находясь в окне свойств системы, выберите пункт «Дополнительные параметры системы».
На вкладке «Дополнительно» найдите раздел «Загрузка и восстановление», где от вас потребуется нажать «Параметры». В открывшемся окне вы можете посмотреть путь до файла дампа, по умолчанию, это %SystemRoot%MEMORY.DMP. Означает на практике C:WindowsMEMORY.DMP. Вы можете задать свое место, на любом другом диске.
Так же у вас есть возможность не создавать полный дамп, а заменять его мини дампом, меньшего размера.
Различия между файлами полного дампа памяти и файлами мини дампа
Файл дампа памяти может собирать различную информацию. Как правило, у инженера службы поддержки должно быть все содержимое виртуальной памяти для устранения проблемы. В других случаях вам может потребоваться собрать меньше информации, чтобы сосредоточиться на конкретной проблеме. Отладчик гибкий. Эта гибкость позволяет ограничить информацию, которую захватывает файл дампа памяти, собирая либо файлы полного дампа памяти, либо файлы мини-дампа памяти.
Полный дамп памяти файлов. Эти файлы содержат содержимое виртуальной памяти для процесса. Эти файлы наиболее полезны при устранении неполадок неизвестных проблем. Инженер службы поддержки может использовать эти файлы для поиска в любой области памяти, чтобы найти любой объект, найти переменную, которая была загружена в любой стек вызовов, и разобрать код, чтобы помочь диагностировать проблему. Недостаток файлов полного дампа памяти в том, что они большие. Для сбора этих файлов может также потребоваться дополнительное время, и записываемый процесс должен быть заморожен во время создания файла дампа.
Мини-дамп памяти файлов. Файл мини-дампа более настраиваемый, чем файл полного дампа, и может иметь размер от нескольких мегабайт (МБ) до размера файла полного дампа. Размер отличается из-за объема виртуальной памяти, которую отладчик записывает на диск. Несмотря на то, что вы можете быстро собирать мини-файлы дампа памяти, они небольшие, но у них также есть недостаток. Файлы мини-дампа могут содержать гораздо меньше информации, чем файлы полного дампа. Информация, которую собирает файл мини-дампа, может быть практически бесполезной для инженера службы поддержки, если область памяти, которую должен изучить специалист службы поддержки, не была захвачена, то он не сможет понять толком причину. Например, если память кучи не записывается в файл дампа памяти, инженер службы поддержки не может проверить содержимое сообщения, которое обрабатывалось во время возникновения проблемы.
Поэтому я вам рекомендую оставлять полный файл MEMORY.DMP, если не хватает места на SSD диске ,то перенесите его в другое место
Узнаем причину синего экрана в BlueScreenView
BlueScreen — это бесплатная утилита, входящая в состав nirsoft, напоминаю, что данный сборник инструментов мы использовали, когда нам необходимо было узнать пароли сохраненные в браузере(/kak-posmotret-sohranennyie-paroli-v-brauzerah/), она сканирует все ваши файлы мини-дампов, созданные во время сбоев «синего экрана смерти», и отображает информацию обо всех сбоях в одной таблице. Для каждого сбоя BlueScreenView отображает имя файла мини-дамп, дату/время сбоя, основную информацию о сбое, отображаемую на синем экране (код проверки ошибки и 4 параметра), а также сведения о драйвере или модуле, которые могли вызвать сбой (имя файла, название продукта, описание файла и версия файла). Для каждого сбоя, отображаемого в верхней панели, вы можете просмотреть подробную информацию о драйверах устройств, загруженных во время сбоя, в нижней панели. BlueScreenView также помечает драйверы, которые их адреса нашли в стеке аварийного отказа, так что вы можете легко найти подозреваемые драйверы, которые, возможно, вызвали сбой.
Скачать BlueScreenView можно с официального сайта https://www.nirsoft.net/utils/blue_screen_view.html
И так, предположим, что на одной виртуальной машине ESXI или физическом сервере, произошел синий экран, я получил файл полного дампа памяти MEMORY.DMP и мне необходимо выяснить причину сбоя. Открываем утилиту BlueScreenView. Утилита по умолчанию находит файлы дампов памяти в стандартных местах, но если вы анализируете MEMORY.DMP не на сервере, где случился BSOD, а на своем сервере, то вы можете указать ему путь до файла, для этого нажмите самый левый, верхний значок и в открывшемся окне «Advanced Options» выберите пункт «Load a single MiniDump File». Там с помощью кнопки «Browse» найдите ваш файл MEMORY.DMP и нажмите «Ok».
У вас в списке файлов появится ваш дамп. Тут вы можете увидеть столбцы с различной информацией:
- Время выпадания BSOD
- Сообщение ошибки, в моем случае, это PAGA_FAULT_IN_NONPAGED_AREA
- Код ошибки 0x00000050
- И столбцы с параметрами
Если вы щелкните двойным кликом по нужной записи дампа памяти, то у вас откроется окно свойств, с той же информацией, единственный там будет плюс, что вы сможете скопировать имя и код ошибки. Вот согласитесь, что информации кот наплакал, и если синий экран имеет размытую формулировку ,вы будите шерстить сотни форумов в надежде отыскать причину BSOD. Поэтому данный инструмент лично я считаю малополезным и предлагаю, перейти к профессиональному от компании Microsoft.
Выявляем причины синего экрана windows в Microsoft Kernel Debugger
Итак, когда речь идет, о BSOD, то продвинутые пользователи сразу вспоминают программу Microsoft Kernel Debugger или WinDbg (Debugging Tools for Windows). WinDbg — это многоцелевой отладчик для Windows, распространяемый Microsoft. Отладка — это процесс поиска и устранения ошибок в системе; в вычислительной технике это также включает изучение внутренней работы программного обеспечения. Его можно использовать для отладки приложений пользовательского режима, драйверов устройств и самой операционной системы в режиме ядра. Как и более известный отладчик Visual Studio, он имеет графический интерфейс пользователя (GUI).
WinDbg может использоваться для отладки дампов памяти в режиме ядра, созданных после того, что обычно называют «голубым экраном смерти», возникающим при выполнении проверки на наличие ошибок. Его также можно использовать для отладки аварийных дампов в пользовательском режиме. Это известно как посмертная отладка.
WinDbg может автоматически загружать файлы отладочных символов (например, файлы PDB ) с сервера, сопоставляя различные критерии (например, временную метку, CRC, одиночную или многопроцессорную версию) через SymSrv (SymSrv.dll), вместо более трудоемких задач создания дерева символов для отладочной целевой среды. У Microsoft есть общедоступный символьный сервер, который имеет большинство общедоступных символов для Windows 2000 и более поздних версий Windows (включая пакеты обновления).
Подробнее почитать про WinDbg вы можете по ссылке
Установка Microsoft Kernel Debugger
Установить WinDbg вы можете двумя методами:
- Microsoft Kernel Debugger входит в состав SDK, именно от туда вы можете его загрузить
- Microsoft Kernel Debugger можно скачать отдельным пакетом, но не всегда есть самые актуальные версии
Переходим на страницу SDK. У вас есть возможность скачать тонкий клиент, где потом придется выкачивать все из интернета, или же вы скачиваете ISO образ имеющий все пакеты, но он весит больше и подходит для сред, где нет интернета.
Скачать SDK https://developer.microsoft.com/ru-ru/windows/downloads/windows-10-sdk
Предположим, что вы выбрали метод с тонким клиентом, где у вас был скачан файл winsdksetup.exe. Обращаю внимание, что установить Microsoft Kernel Debugger вы можете на любую систему из списка:
- Windows 10 версии 1507 или более поздняя версия
- Windows Server 2012 R2 (только для командной строки) Windows Server 2016 (только для командной строки)
- Windows 8.1
- Windows Server 2012 R2
- Windows 7 с пакетом обновления 1 (SP1)
Запускаем winsdksetup.exe, убедитесь, что у вас есть доступ в интернет и 5-6 ГБ свободного, дискового пространства.
У вас откроется мастер установки SDK Windows, на выбор будет два варианта, первый это установка в стандартное расположение и второй вариант, это загрузка Windows Software Development Kit в нужное вам расположение, для последующей Offline установки. Я выберу первый вариант. Кстати второй вариант даст вам возможность получить отдельный MSI файл с WinDbg.
Далее вы можете подписаться на отправку анонимной статистики в программе качества, я не стал.
Принимаем лицензионное соглашение SDK нажимая «Accept».
Снимаем все пункты, кроме «Debugging Tools for Windows» и нажимаем Install.
Начнется процесс установки WinDbg.
Все утилита диагностики синих экранов установлена.
Скачать Microsoft Kernel Debugger отдельным пакетом вы можете по ссылке слева
Диагностика BSOD в WinDbg
Первое, что я вам советую сделать, так это включить для форматов файлов .DMP, .HDMP, .MDMP, .KDMP и .WEW ассоциацию с Microsoft Kernel Debugger, чтобы при двойном клике по дампу памяти или минидампу, он сразу открывался в утилите. НО ЭТО НА ЛЮБИТЕЛЯ. Если вы хотите включить ассоциации файлов, то откройте вашу командную строку и выполните команду для перехода в нужный каталог:
cd C:Program FilesWindows Kits10Debuggersx64 если у вас x-86 система, то выполните cd C:Program Files (x86)Windows Kits10Debuggersx86
И затем выполните команду:
windbg.exe -IA
Открываем пуск и находим там Windows Kit, в котором выберите нужный вам исполняемый файл.
Следующим шагом подключаются Symbol File Path, чтобы вы могли иметь самую актуальную базу ошибок, которая будет кэшироваться у вас на локальных дисках. Для этого в меню «File» найдите пункт Symbol File Path
В открывшемся окне введите: SRV*C:SymCache*http://msdl.microsoft.com/download/symbols. Все будет кэшироваться в папку C:SymCache. Сохраняем настройки.
Ну, что начинаем искать причины синего экрана windows, для этого загружаем в утилиту свой дамп памяти. Для этого вы можете открыть в меню пункт «File — Open Crash Dump».
Когда вы откроете файл дампа отладчику потребуется некоторое время для подключения к интернету и загрузки необходимых символов для отладки. В процессе загрузки отладочных символов в командной строке отладчика появляется надпись Debugee not connected, в это время вы не сможете использовать отладчик.
После загрузки нужных данных для диагностики дампа памяти.Вам необходимо нажать ссылку «For analysis ot this run file !analize -v»
Будет выведено много информации, где можно посмотреть сбойные адреса памяти, драйвера, сбойные модули, как в моем случае srv. Обратите внимание, что все ссылки в отчете кликабельны и дадут дополнительную информацию, об ошибках.
Вот пример моей диагностической информации, которую можно выложить на профильном форуме для вопроса.
THREAD_SHA1_HASH_MOD_FUNC: 9fc67a809a80c1143874aa0b8e74457296ca0384
THREAD_SHA1_HASH_MOD_FUNC_OFFSET: b0555fe5a3c19294e9394f289acff2322d3a2abf
THREAD_SHA1_HASH_MOD: 8f10e91895468b5b2a56df2106350f23f731e5ce
FAULT_INSTR_CODE: f0003c6
SYMBOL_STACK_INDEX: 4
SYMBOL_NAME: srv!SrvOs2FeaToNt+48
FOLLOWUP_NAME: MachineOwner
STACK_COMMAND: .thread ; .cxr ; kb
BUCKET_ID_FUNC_OFFSET: 48
FAILURE_BUCKET_ID: AV_srv!SrvOs2FeaToNt
BUCKET_ID: AV_srv!SrvOs2FeaToNt
PRIMARY_PROBLEM_CLASS: AV_srv!SrvOs2FeaToNt
TARGET_TIME: 2019-03-28T05:20:55.000Z
OSBUILD: 9600
OSSERVICEPACK: 0
SERVICEPACK_NUMBER: 0
OS_REVISION: 0
SUITE_MASK: 272
PRODUCT_TYPE: 3
OSPLATFORM_TYPE: x64
OSNAME: Windows 8.1
OSEDITION: Windows 8.1 Server TerminalServer SingleUserTS
OS_LOCALE:
USER_LCID: 0
OSBUILD_TIMESTAMP: 2015-07-15 19:37:58
BUILDDATESTAMP_STR: 150715-0840
BUILDLAB_STR: winblue_ltsb
BUILDOSVER_STR: 6.3.9600.17936.amd64fre.winblue_ltsb.150715-0840
ANALYSIS_SESSION_ELAPSED_TIME: 61d
ANALYSIS_SOURCE: KM
FAILURE_ID_HASH_STRING: km:av_srv!srvos2featont
FAILURE_ID_HASH: {d5f1a37d-2c94-f55b-5042-7a5dbaa092e1}
Кликнув по сбойному модулю srv, я увидел, что все дело в файле SystemRootSystem32DRIVERSsrv.sys
Очень частые причины BSOD в Windows, это драйвера от сторонних разработчиков, принтеры, другие периферийные устройства, различные утилиты. Если хотите понять есть ли среди них сбойные, то строке, где выполняются команды (Я отметил ее желтой стрелкой) введите !thread и нажмите Enter. У вас появится некая информация, найдите в ней значения base и Limit.
Далее в командной стоке WinDbg вам нужно ввести команду:
dps номер limit номер base. Пример dps ffffd001509cc000 ffffd001509d3000 или можно просто dps будет выведены все драйвера
Пример сбойного драйвера, по которому можно определять откуда растут корни, так сказать причина синего экрана.
В Bugcheck Analisis видно, что сбоил Arg3 fffff8017af94360, If non-zero, the instruction address which referenced the bad memory address. В командной строке WinDbg введите команду:
!irp fffff8017af94360 -force
Пробуем получить причины синего экрана виндовс. На выходе я вижу, что есть проблемы Could not read device object or _DEVICE_OBJECT not found
Вы можете легко сохранить данную информацию из лога и спокойно передавать ее для диагностики на форумах. так же начиная с Windws 10, там появилась встроенная функция устранения неполадок ведущих к синему экрану, найти ее можно в параметрах системы, в разделе «Обновление и безопасность» , далее идем в раздел «Устранение неполадок», где находим пункт «Синий экран». Там будет простой мастер, который попробует устранить проблему.
На этом у меня все, надеюсь, что вы теперь научились, как узнавать причину синих экранов и проводить диагностику. На этом у меня все. С вами был Иван Семин, автор и создатель IT блога Pyatilistnik.org.
Мар 12, 2019 09:00Используемые источники:
- https://masterservis24.ru/331-siniy-ekran-smerti-windows-7.html
- https://f1comp.ru/oshibki/kak-uznat-prichinu-sinego-ekrana-smerti-windows-bsod/
- http://pyatilistnik.org/prichiny-sinego-ekrana-windows-uznaem-za-minutu/