Синий экран смерти и с чем его едят


Blue Screen of Death или синий экран смерти

Всё написаное до Technical Information, описывается, почему это могло случиться, что это вообще за экран и какие действия надо произвести, чтобы его устранить. Написано там всегда одно и то же (установите или удалите новые драйвера, посмотрите, не конфликтует ли они, отключите новые штуки, уберите разгон и т.п.).

А вот Technical Information содержит следующее:

  • код ошибки и его символьное имя (например, 0?0000001E, KMODE_EXCEPTION_NOT_HANDLED);
  • 4 параметра, поясняющие ошибку и предназначенные для отладочного ПО (значение параметров зависит от кода ошибки);
  • адрес места ошибки (если его возможно указать);
  • название драйвера, в котором произошла ошибка (если его возможно указать).

С помощью этой самой информации можно бороться с BSoD, а точнее со сбоями системы, драйверов и программ.
Кстати, что интересно есть возможность ручного вызова синего экрана смерти по двойному нажатию клавиши SCROLL LOCK при удерживании клавиши CTRL(при условии, что это функция включена в настройках системы). Принудительно вызывается BSoD для получения дампа памяти компьютера в заданный момент, а именно при разрешении текущих проблем работы операционной системы.


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

  1. Нажимаем "Пуск" - "Панель управления" – "Система" - "Дополнительно" - "Загрузка и восстановление" – "Параметры" - "Отказ системы".
  2. Снимаем галочку "Выполнить автоматическую перезагрузку" и нажмите OK.


Причины возникновения BSoD

Ниже перечислены наиболее частые причины появления злого синего экрана:

  • конфликт драйверов;
  • некорректные драйвера;
  • несовместимые с данной ОС драйвера;
  • сбои драйверов;
  • вирусы (редко);
  • несовместимые друг с другом устройства (он же конфликт устройств);
  • сбои устройств (зачастую из строя выходит оперативная память или жесткие диски);
  • конфликт приложений (как правило, BSoD вызывают эмуляторы или антивирусные приложения установленные вместе);
  • перегрев комплектующих (и как следствие сбои).

Часто BSoD свидетельствует о серьезных проблемах с комплектующими или драйверами. Откладывать выявление причин возникновения BSoD на потом не есть лучший выбор – рискуете оказаться перед не включающимся компьютером, у которого вышла из строя какая-нибудь железяка.


Наиболее распространенные BSoD

Наиболее распространенные типы синих экранов смерти:

  • KMODE_EXCEPTION_NOT_HANDLED - процесс режима ядра попытался выполнить недопустимую или неизвестную процессорную инструкцию. Может быть связан с несовместимостью "железа", неисправностью оборудования, ошибками в драйвере или системной службе;

  • NTFS_FILE_SYSTEM - сбой при выполнении кода драйвера файловой системы ntfs.sys. Причиной может являться нарушение целостности данных на диске (сбойный кластер) или в памяти, повреждение драйверов IDE или SCSI;

  • DATA_BUS_ERROR - в оперативной памяти обнаружена ошибка чётности. Причина — дефектное или несовместимое оборудование, например — сбой в микросхеме кэша второго уровня, в видеопамяти. Также может быть связан с некорректно работающим или неверно сконфигурированным драйвером, со сбоем на диске;

  • IRQL_NOT_LESS_OR_EQUAL - процесс режима ядра попытался обратиться к области памяти, используя недопустимо высокий для него уровень IRQL (Interrupt Request Level). Может быть вызван ошибками в драйвере, системной службе, BIOS или несовместимым драйвером, службой, программным обеспечением (например — антивирусом);

  • PAGE_FAULT_IN_NONPAGED_AREA - запрашиваемые данные отсутствуют в памяти (например, система ищет нужные данные в файле подкачки, но не находит их). Обычно связан со сбоем оборудования (дефектная память), нарушением файловой системы, ошибкой системной службы или антивируса;

  • KERNEL_STACK_INPAGE_ERROR - не удаётся прочитать из файла подкачки в физическую память запрашиваемую страницу памяти. Причины — дефектный сектор файла виртуальной памяти, сбой контроллера жёстких дисков, недостаточно места на диске, неправильное подключение жёсткого диска, конфликт прерываний, дефект ОЗУ, вирус;

  • MISMATCHED_HAL - уровень аппаратных абстракций (HAL) и ядро системы не соответствуют типу компьютера. Чаще всего связан с ситуацией, когда в изначально однопроцессорную систему устанавливают второй процессор, забывая вручную обновить HAL и ntoskrnl. Может также быть вызван несовпадением версий hal.dll и ntoskrnl.exe;

  • KERNEL_DATA_INPAGE_ERROR - не удаётся прочитать в физическую память запрашиваемую страницу данных. Причины — дефектный сектор файла виртуальной памяти, сбой контроллера жёстких дисков, сбой оперативной памяти, вирус, сбой дискового контроллера, дефектная оперативная память;

  • INACCESSIBLE_BOOT_DEVICE - в процессе загрузки ОС не смогла получить доступ к системному разделу. Причин этого распространённого сбоя может быть очень много:
    • дефектный загрузочный диск или дисковый контроллер;
    • несовместимость оборудования;
    • загрузочный вирус;
    • ошибка в файловой системе, например — в таблице разделов Partition Table;
    • повреждение или отсутствие необходимого при загрузке файла, например — NTLDR;
    • отсутствие драйвера контроллера жёстких дисков или несоответствие текущего драйвера установленному оборудованию;
    • включённый в BIOS режим DMA;
    • включённый в CMOS Setup режим смены букв дисководов DRIVE SWAPPING;
    • конфликт распределения ресурсов между дисковым контроллером и другим устройством;
    • повреждение данных о загружаемых драйверах в системном реестре;
    • установка системы в раздел за пределами первых 1024 цилиндров жёсткого диска;
    • ошибка в файле boot.ini;

  • UNEXPECTED_KERNEL_MODE_TRAP - возникновение неподдерживаемой ядром ловушки (trap) или фатальная ошибка (типа деления на ноль). Неисправность оборудования или сбой программного обеспечения;

  • STATUS_SYSTEM_PROCESS_TERMINATED - сбой в службе, работающей в пользовательском режиме. Сбой может быть связан с некорректной работой прикладных программ, драйверов, сторонних системных служб;

  • STATUS_IMAGE_CHECKSUM_MISMATCH - повреждён или утерян файл драйвера или системной библиотеки. Может быть вызван сбоем файловой системы или случайным удалением системного файла.


Дампы

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

Необходимо убедиться, что создание дампов не отключено в системе. Для этого:

  1. Нажимаем "Пуск" - "Панель управления" – "Система" - "Дополнительно" - "Загрузка и восстановление" – "Параметры" - "Отказ системы".
  2. Проверяем выставлены ли настройки в графе "Запись отладочной информации" следующим образом (если нет, то выставляем)

Memory Dump

Дампы хранятся по пути, указанных в этих настройках. Путь вообщем-то можно изменить как Вам удобно.

  • %SystemRoot% – это C:\Windows\, где C:\ – диск куда установлена операционная система.


Все мини-дампы имеют формат .dmp и обитают строго в папке, которая была указана в настройках на момент возникновения синего экрана смерти.


P.S.: Для получения более подробных сведений по ошибкам (пример: 0x8004210b) можно обратиться в службу поддержки Microsoft.