Многие, у кого компьютер давненько, хоть один раз, но наверняка сталкивались с такой штукой, как экран с кучей белых надписей, избавиться от коготорого можно только “жесткой” перезагрузкой.
Сегодня я поведаю Вам что же это за экранчик такой и о чем он повествует. Терминология и все остальное.
Синий экран смерти (англ. Blue Screen of Death, BSoD) – так его прозвали в народе – сообщает пользователю о во непоправимой системной ошибке во всех версиях Windows. Чаще всего следствие появления синего экрана смерти – это попытка выполнения драйвером недопустимой операции (подробнее о драйверах тут). Что значит непоправимая ошибка? Это значит, что операционная система не может никак решить эту проблему и ей остается только перезагрузка компьютера с потерей всех несохраненных изменений. Последнее, что в момент ошибки она(система) успевает сделать – это заблокировать всё возможное, создать дамп (о дампах ниже по тексту) и сообщить Вам код ошибки, чтобы Вы самостоятельно устранили её причину. Правда далеко не всегда самостоятельно удается устранить проблему, а посему система создаёт запись в системном журнале с параметрами возникшей ошибки и путем к этому самому, так называемому, дамп-файлу, который может быть использован разработчиками программ и драйверов для более детального определения причин ошибки и их устранения.
По сути BSoD является этаким предохранителем, ведь, если бы его не было, то вполне вероятно начали бы ломаться(поморщился от не сис.админского термина) всякие внутренние компоненты Вашего компьютера.
Как выглядит и что пишет.
Если Вы еще не видели, то эта мерзость выглядит вот так:
Где всё до Technical Information описывает почему это могло случиться, что это вообще за экран и какие действия надо произвести, чтобы его устранить. Написано там всегда одно и то же(поставьте\уберите новые драйвера, посмотрите не конфликтует ли они, отключите новые штуки, уберите разгон и тп). А вот Technical Information содержит следующее:
* код ошибки и его символьное имя (например 0×0000001E, KMODE_EXCEPTION_NOT_HANDLED)
* 4 параметра, поясняющие ошибку, предназначенные для отладочного ПО (значение параметров зависит от кода ошибки)
* адрес места ошибки (если его возможно указать)
* название драйвера, в котором произошла ошибка (если его возможно указать)
С помощью этой самой информации можно бороться BSoD, а точнее со сбоями системы, драйверов и программ.
Кстати, что интересно есть возможность ручного вызова синего экрана смерти по двойному нажатию клавиши SCROLL LOCK при удерживании клавиши CTRL(при условии, что это функция включена в настройках системы). “Зачем надо принудительно вызывать эту штуку?” – спросите Вы. А того, чтобы получить дамп памяти компьютера в заданный момент, а именно при разрешении текущих проблем работы операционной системы.
Несколько настроек.
Бывает такое, что компьютер перезагружается сразу после появления синего экрана смерти. Чтобы этого избежать и успеть записать код ошибки проделайте следующее:
Пуск - Настройка - Панель управления – Система - Дополнительно - Загрузка и восстановление – Параметры - Отказ системы.
Тут снимите галочку “Выполнить автоматическую перезагрузку” и нажмите 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 — повреждён или утерян файл драйвера или системной библиотеки. Может быть вызван сбоем файловой системы или случайным удалением системного файла.
Это так, сказать, горячая дюжина.
Дампы.
Как я уже сказал в случае возникновения синего экрана смерти система создает некий дамп-файл. Дамп хранит в себе информацию о том что же произошло и кто\что вызвало сбой. Чуть позже будет статья о том как открывать и анализировать дампы, а пока я просто расскажу о том где они обитают.
Для начала надо убедиться, что создание дампов не отключено в системе. Для этого делаем следующее:
Пуск - Настройка - Панель управления – Система - Дополнительно - Загрузка и восстановление – Параметры - Отказ системы.
Там проверяем выставлены ли настройки в графе “Запись отладочной информации” следующим образом:
Если нет, то, само собой, выставляем.
Дампы хранятся по пути, который указан в этих самых настройках. Путь вообщем-то можно изменить как Вам удобно.
%SystemRoot% – это C:\Windows\, где C:\ – диск куда установлена операционная система.
Все мини-дампы имеют формат .dmp и обитают строго в папке, которая была указана в настройках на момент возникновения синего экрана смерти.
Поддержка.
В случае возникновения подобной проблемы я готов помочь Вам с её решением по мере сил и возможностей.
Чтобы я мог это сделать есть два варианта:
1. [менее точный, более быстрый] Вам надо сообщить свой код ошибки и прочую необходимую информацию на форуме или с помощью формы обратной связи.
2. [дает больше результатов, но занимает больше времени] Вам надо выслать мне дамп памяти(о дампах см.выше) на следующий адрес bsod [собачка] sonikelf.ru, где [собачка] – это известный всем символ @ . Никаких пробелов, запятых и тд, в этом адресе, само собой, быть не должно.
Сроки рассмотрения дампов в отличии от обычных писем варьируется от суток до недели(дольше – редко), в зависимости от моей занятости и настроения ( ).
Послесловие.
Вот такая вот штука. Настоятельно рекомендую не запускать компьютер на столько, чтобы сталкиваться с этой синей гадостью.
Пока всё.
Оставайтесь со мной