Приветствую на страницах блога Компьютер76, и сейчас мы с вами обсудим вопрос о том, что такое и как исправить синий экран BSOD. Я думаю, если вы столкнулись с этой проблемой, вы наверняка успели перелопатить множество похожих ресурсов с дельными, а порой совершенно пустыми советами как исправить синий экран отказавшей Windows. Нередко советы друг друга дублируют, и всё потому, что они одинаково либо верны, либо ложны. Давайте немного расширим знания по поводу этого вопроса.
Самое плохое для пользователя – это потеря данных, и синий экран смерти BSOD (как ни парадоксально прозвучит) как раз предназначен для борьбы с этими потерями. BSOD – это настройка, призванная сохранить то, что вам дорого. Просто нужно правильно оценить обстановку. Причину и как с ним справиться, вы сможете иногда сами одолеть. Если он застал вас врасплох, вам понадобятся:
Самая большая ошибка, вскрывающая пробелы в знании вопроса участвующих в обсуждении этой проблемы (и пострадавших, и советующих) – это слепое и часто бессмысленное «копание в сторону железа» по образцу «пошевелите шлейфы», «выньте/вставьте планки памяти», «сноси винду». Порой смешно перечитывать итоги таких поисков внимающих советам «специалистов»: «переустановил Windows – снова BSOD», «поменял местами планки DIMM – без изменений». Всего этого ведь легко избежать – одного только сборника программ по примеру Hiren’s вполне достаточно для правильной диагностики.
Проблема нередко подстерегает и тех, кто пытается прочесть в коде ошибки BSOD (типа 0х0000000***) причину неисправности. Это в некоторых случаях просто нереально, ибо Windows как система в силу отсутствия инструментов низкоуровневого программирования до сих пор иногда просто неспособна гарантийно определять причину остановки. И долго не сможет. Ведь процесс аварийной остановки работы Windows не изменился до сих пор – BSOD вылетает ЗАДОЛГО до того, как реальная неисправность проявляется. Это, напомню, и есть главная задача «синего экрана смерти». Потому и нередко избавление от одной ошибки лежит в противоположных действиях: один переустановил Windows – всё работает, второй справился заменой «оперативки» вслепую, «на шару» – тоже повезло. Так в чём проблема-то была? Сразу оговорюсь – ошибки здесь не все. Но о главных, чтобы хоть немного сэкономить ваше время на изысканиях, расскажу по собственному опыту.
Она же Interrupt Request Level. В переводе на понятный русский означает, что какая-то программа попыталась получить доступ к части памяти, на которую у самой Windows были собственные планы. Windows программе отказала, и та отвалилась. Отомстив самой Windows. Так часто поступают именно драйверы, у которых по прописанным в них характеристикам такой доступ, по идее и вообще-то, заложен. Чаще всего такая ошибка возникает при обращении к API Windows. А если конкретнее – при обращении к графическому её интерфейсу. В общем, в 9-ти из 10-ти случаев стоит копнуть именно в сторону драйверов, обновив их или его или просто перустановив. Проблема осталась? Вопрос смещается уже к “железу”, для которого драйвер прописан. И дело не в возрасте установленной, к примеру, видеокарты. Оверклокингом занимались? Что разгоняли? Уже неважно – откатывайтесь к настройкам по умолчанию. И кстати – у проблемы PAGE FAULT IN NONPAGED AREA растут ноги оттуда же.
Очередная популярная ошибка-причина BSOD, относящаяся почти на 100% гарантийно к планкам оперативной памяти либо к слотам под них на материнской плате. Memtest вам в помощь. Она должна ошибку обнаружить. В любом случае не помешает открыть корпус или крышку ноутбука и “поиграть” планками, вынимая и вставляя каждую.
Очередная проблема, относимая к RAM. Наиболее часто решалось сбросом настроек BIOS до по умолчанию. Или как минимум проверкой их правильности в части разгона и соответствия уровня напряжения на планках согласно заводских.
Эта ошибка следует в продолжение темы оверклокинга. Но здесь причиной является разогнанный процессор. Ничего страшного, просто в следующий раз будьте немного консервативнее в его настройках.
Копаем в сторону диск HDD или SSD, на котором лежит система. Нередко всё обходится проблемой с драйверами, но иногда ошибка BSOD сигнализирует о более серьёзных проблемах именно с аппаратной частью хранилища. Готовьтесь к замене, чтобы потеря данных не стала окончательной. И с помощью загрузочной флешки прогоняем диск утилитой chkdsk.exe.
Наиболее частая причина этого – битые сектора (они же плохие секторы, они же “бэды”). Нередко успешно лечится из среды восстановления с кнопки Восстановление при загрузке:
Или, что чаще, выбором правильного режима работы диска в BIOS:
Ошибка сама по себе немного бестолковая. В смысле описания причина. Почти всегда BSOD с такой ошибкой сопровождается именем драйвера, который её вызвал. Это может быть действием к удалению его и переустановке или к поиску сбойной программы.
Начнём с симптомов. BSOD появляется…
Попробуем узнать причину BSOD из-под аварийного диска. Принцип работы программы заключается в снятии информации из файла под именем MEMORY.DMP, который появится неминуемо (при установленной по умолчанию галочке напротив Записать событие в системный журнал – см. рис ниже) после появления BSOD-а (нет BSOD – нет и файла). Он создаётся системой и появится в корневой папке системы (для Windows 7 и позднее) по адресу %SystemRoot%\MEMORY.DMP.
Пусть вас не смущает этот путь – для глаз пользователя он принимает вид C:\Windows\MEMORY.DMP. Если же вы не уверены, что является корневой папкой системы, вы легко можете это проверить. Команда set в командной консоли вскрывает основные пути и директории Windows. Так, набрав
set
вы увидите настоящее название ваших папок и субдиректорий. А вот как это выглядит:
Начиная с версии Windows 7, информация по BSOD отображается в Центре поддержки, куда, если такая беда приключилась, можно легко попасть, нажав на флажок в правом нижнем угла системного трея:
Повторюсь, пункт с возможностью решить проблему появиться только после критической ситуации, а раз BSOD не даёт возможности даже зайти в систему, то надежды нет даже на куда более информативный журнал событий системы, который в рабочей системе находится по адресу:
Панель управления-Администрирование-Просмотр событий-Журналы Windows-Cистема
Вот он (у меня чистенький, как видите):
Любому событию Windows имеет привычку присваивать код – критично оно, либо нет. Если бы смогли зайти в систему после BSOD, вы бы наверняка увидели бы предупреждение о критической ошибке с присвоенным кодом на манер:
Однако в любом случае появление и прочтение таких регистрируемых системой ошибок мало что даёт конкретного любому из нас. Коды часто перемежаются между собой, а в нашем случае система просто отказывается работать.
В редакторе реестра
regedit.exe
За него отвечает параметр DisplayParameters в разделе:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CrashControl
Беда в том, что тот по умолчанию не сформирован. Чтобы регистрация ошибок через раздел реестра велась нужным нам порядком, небходимо:
А если Windows не загружается? Вы можете отредактировать реестр даже нерабочей Windows.
Мне известны несколько утилит, которые способны указать правильный путь. Очень неплохо справляется с проблемами программа WhoCrashed (домашняя версия бесплатна). Заряжаем BlueScreenView. В окне нужно указать путь к указанному файлу MEMORY.DMP. В нём будет отображаться копия информации, отображаемой самим экраном:
Причём последняя строчка Dumping physical memory to disk означает, что ошибка как раз записана в упомянутый файл. Так что не спешите сразу выключать компьютер после того, как BSOD подвисает систему. В списке событий появится строка с указанным событием:
Однако, обратите внимание на тот факт, что если список драйверов внизу таблицы (файлы .sys) пуст, то причина, скорее всего, кроется в системных файлах Windows – такое повреждение нередко получает Windows при принудительных выключении или перезагрузке при применении обновлений. В этом случае редко помогает консоль восстановления системы, так как выходит из строя выходит целая цепочка критически важных для системы файлов, для глаз пользователя остающихся нетронутыми.
Так или иначе, исходя из информации из абзацев выше, я призываю вас сначала попробовать перейти в Безопасный режим, а затем приступить к тестированию “железных” составляющих. Если в Безопасный режим войти удалось, считайте повезло – отключите программы в автозапуске или “сносите” драйверы к устройствам, которые требуют дополнительного программного обеспечения. Раз потенциальные причины нам заранее известны, последовательно пробегите тестами по:
Если на руках Hiren’s BootCD, заранее предлагаю прибегнуть к встроенному в диск средству диагностики “синего экрана”. Эта утилита BlueScreenView вам уже известна, и вот её местоположение в аварийном диске:
Если BSOD появился в момент запуска, нет возможности зайти в безопасный режим (когда Windows загружает ТОЛЬКО жизненно необходимые драйверы), речь идёт, скорее всего, о серьёзном повреждении системных файлов. Невозможность работы в безопасном режиме является важным индикатором угасшей работоспособности. Здесь обычно помогают только кардинальные меры, и если консоль восстановления (откат до контрольной точки) сработала – считайте, что вам повезло. Таким образом, лично я выработал для себя небольшой, но установившийся алгоритм действий для того, как исправить синий экран BSOD:
Но для каждого конкретного устройства можно использовать на выбор одну или несколько программ. Например:
Успехов нам всем