Вы никогда не видели BSOD
Как уже было отмечено, BSOD (Blue Screen Of Death, голубой экран смерти) – особенность Windows. С помощью BSOD Windows общается с пользователем и сообщает номер ошибки и ее причину. Конечно, в большинстве случаев описание ошибки прочитать не получается, поскольку вместо русских букв (у всех же русскоязычные версии Windows) отображаются различные иероглифы. Это понятно – перед «смертью» Windows не успела подгрузить русификатор.
Вызывать BSOD могут неправильно работающие драйверы, службы, оборудование и программное обеспечение, тесно интегрированное с ОС. Нужно отметить, что диагностировать ошибки «голубого экрана» довольно сложно.
Если вы никогда не видели BSOD, это еще не означает, что его нет. Это как в известной комедии: «Видишь суслика? И я не вижу, а он есть!» Довольно часто включена автоматическая перезагрузка системы в случае ошибки. Ваша система самопроизвольно перезагружается? Причина – как раз эта опция: вместо отображения BSOD Windows просто перезагружает систему в надежде, что после перезагрузки ошибка не повторится. Иногда оно так и есть, но если неисправность постоянная, например «битый» модуль памяти, то перезагрузкой, понятно, проблему не решить.
В этой главе мы научимся по коду ошибки BSOD (кстати, код ошибки – это единственное, что можно разобрать на «голубом экране») определять причину ошибки, но сначала нам нужно отключить автоматическую перезагрузку. Для этого выполните команду меню Пуск, Настройка, Панель управления, Система, Дополнительно (рис. 5.1) и нажмите кнопку Параметры в группе Загрузка и восстановление (рис. 5.2). Выключите опцию Выполнить автоматическую перезагрузку, если она включена.
Рис. 5.1. Окно свойств системы
Рис. 5.2.Загрузка и восстановление
Текст сообщения BSOD содержит описание ошибки, рекомендации по устранению ошибки (обычно они самые общие, поэтому особо не помогают), затем следует номер ошибки и ее параметры. В русскоязычной версии Windows можно прочитать лишь номер ошибки и ее параметры. Остальной текст нечитабелен.
То, что мы можем прочитать, выводится в следующем формате:
*** STOP: код_ошибки (параметры).
Например:
*** STOP: 0x000000D1 (0x00000000, 0x000000000, 0x00000000, 0xF5BCD2D1).
Ошибка 0x000000D1 – ошибка обращения к памяти. Это одна из самых распространенных ошибок, возникающая при обращении к недоступному адресу памяти. Параметры ошибки следующие:
➲ адрес ячейки памяти, к которому производилось обращение;
➲ номер прерывания;
➲ тип операции (0 – чтение, 1 – запись);