Синий экран смерти (англ. Blue Screen of Death, Blue Screen of Doom, BSoD) — название сообщения о критической системной ошибке в операционных системах Microsoft Windows. Существует три вида сообщений BSOD: для семейств Windows 3.x, Windows 9x с Windows NT и Windows CE.
Синий экран смерти впервые появился в Windows 3.1.
По неподтверждённым данным синий экран имелся и в Windows 1.x, 2.x и 2.1x. Чаще всего в этих системах он появлялся при загрузке из MS-DOS и состоял из непонятных
Windows 3.1x
В Windows 3.1x синий экран смерти мог как появляться сам, так и вызываться пользователем через сочетание клавиш CTRL+ALT+DEL. В последнем случае BSoD выполнял роль диспетчера задач: при зависании приложения можно нажать CTRL+ALT+DEL и нажать на любую клавишу после появления синего экрана, после этого активное приложение принудительно закрывалось.
Windows 9x
После появления синего экрана в системах Windows 9x в отдельных случаях компьютер спрашивает, следует ли продолжить работу. Во многих случаях возможно нормальное продолжение работы после синего экрана, однако компьютер все же приходится перезагружать. В Windows 3.x вызвать синий экран смерти можно было, нажав сочетание клавиш CTRL+ALT+DEL. Существовало много разных вариаций этого экрана: например, вместо стандартного описания ошибки могло быть совсем другое; также вместо надписи «Windows» в белом прямоугольнике могли быть надписи «Система не отвечает», «ВНИМАНИЕ!», название какого-либо приложения или вируса и т. д. Также в этом синем экране редко отображался код ошибки, в основном система предлагала нажать любую кнопку или перезагрузить компьютер.
В Windows 9x синий экран смерти появлялся по менее значительным поводам: например, если произойдет примитивный сбой в работе системы, если открыть дисковод во время чтения диска системой или даже при изменении разрешения экрана при перезагрузке.
В Windows 9x язык синего экрана смерти был таким же, как и язык самой операционной системы[1]. Вновь разноязычный синий экран появился только в Windows 8.
Синий экран смерти в Windows 95 и 98 можно вызвать вручную, введя в окне «Выполнить…» команду con/con.
Семейство Windows NT
Для этих версий Windows синий экран смерти появляется, когда в коде ядра или драйвера, выполняющемся в режиме ядра или в важных для системы процессах, которые выполняются в пользовательском режиме (winlogon.exe, csrss.exe), возникает неустранимая ошибка. Единственным возможным действием в данном случае является перезагрузка компьютера (при этом пользователь теряет все несохранённые данные). По умолчанию такая перезагрузка происходит автоматически. После этого операционная система создаёт в системном журнале запись с параметрами возникшей ошибки. Если в настройках ОС включено создание дампов памяти, то в системном журнале будет указан путь к файлу с расширением .dmp. Он может быть использован разработчиками программ и драйверов для более детального определения причин ошибки (с помощью Microsoft Debugging Tools).
В рамках Windows Resource Kit синие экраны смерти называются стоп-ошибками (англ. stop error); в SDK и DDK они называются bug check screens или Stop screens.
При выходе BSOD в системе запрещаются все прерывания, экран переводится в текстовый режим, пользователь оказывается вне прикладного уровня, так что никаких окон прикладных программ быть не может (что иногда используется вирусами)
Содержимое текста на экране:
- код ошибки (Stop-код) и её символьное имя (например,
0x0000001E
,KMODE_EXCEPTION_NOT_HANDLED
) - 4 параметра, поясняющие ошибку, предназначенные для отладочного ПО (значение параметров зависит от кода ошибки). Также можно самому получить информацию, поясняющую ошибку, с помощью командной строки и команды
net helpmsg
. - адрес места ошибки (если его возможно указать)
- название драйвера, в котором произошла ошибка (если его возможно указать)
Ядро NT предоставляет функции KeBugCheck и KeBugCheckEx, которые показывают синий экран смерти, останавливая работу системы. Обе функции принимают Stop-код, вторая позволяет также указать упомянутые ранее 4 дополнительных параметра.
Windows 8 и Windows 10
Новая версия экрана с ошибкой была замечена разработчиком после предварительного просмотра Windows 8, выпущенного в сентябре 2011 года. Вместо отображения детальной технической информации об ошибке использован упрощённый для пользователей подход, при котором отображается грустный смайлик и сообщение о необходимости перезагрузки компьютера. Это было сделано из соображения, что многие пользователи не вдаются в описание ошибки, а просто нажимают кнопки Power Off или Reset, пытаясь исправить проблему. Сама причина этой проблемы отображается ниже. Также такой вариант экрана с ошибкой, возможно, не так пугает людей, которые видят «экран смерти».
В одном из обновлений для Windows 10 на экран был добавлен QR-код, который при сканировании направлял на сайт Майкрософт с информацией об ошибке.
Ручной вызов
Операционные системы семейства NT, начиная с Windows 2000, могут быть настроены таким образом, чтобы дать пользователю возможность вручную спровоцировать «синий экран смерти». Чтобы включить эту опцию, необходимо выполнить следующие действия[2]:
- Запустить редактор реестра (с помощью команды regedit).
- Открыть раздел реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters.
- Создать DWORD-параметр CrashOnCtrlScroll со значением 1.
- Закрыть редактор реестра и перезагрузить компьютер.
После этого по двойному нажатию клавиши SCROLL LOCK при удерживании правой клавиши CTRL система выдаст синий экран. Эта опция полезна, например, для получения дампа памяти компьютера в заданный момент или для экстренной остановки компьютера аналогично кнопке Reset. Иногда она используется при разрешении настоящих проблем работы операционной системы.