8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Раздел: Документация

0 ... 88 89 90 91 92 93 94 ... 102

деление базового адреса вообще возможно). Воспользовавшись любым подходящим отладчиком (например, soft-ice от Нумсга или i386kd от Microsoft), введем команду, распечатывающую перечень загруженных драйверов с их краткими характеристиками (в i386kd это осуществляется командой !drivers). Как одним из вариантов можно воспользоваться утилитой drivers.exe, входящей в NTDDK. но, какой бы вы путь ни выбрали, результат будет приблизительно следующим: kd> !drivers!drivers Loaded System Driver Summary Base Code Size Data Sue Driver Name Creation Time

80400000 I42dc0 (1291 kb) 4d680 (309 kD) ntoskrnl.exe Wed Dec 08 02:41:11 1999 80062000 cc20 ( 51 kb) 32c0 ( 12 kb) hal.dll Wed Nov 03 04:14:22 1999 f4010000 1760 ( 5 kb) 1000 ( 4 kb) B00TV1D.DLL Thu Nov 04 04:24:33 1999 Dffd8000 21ee0 с 135 kb) 59a0 ( 22 kb) ACPI.sys Thu Nov 11 04:06:04 1999 bel93C00 16f60 ( 91 kb) cccO ( 51 kb) knixer.sys Wed Nov 10 09:52:30 1999 bddb40C0 355e0 ( 213 kb) ЮасО ( 66 kb) ATMFD.DLL Fri Nov 12 06:48:40 1999 ЬевОаООО 200 ( 0 kb) aOO ( 2 kb) w2k ki11.sys Mon Aug 28 02:40:12 2000 1CTAL: 835ca0 (8407 kb) 326180 (3224 kb) ( 0 kb 0 kb)

Обратите внимание на выделенную полужирным строку с именем w2k kill. sys, найденную по ее базовому адресу 0хВЕ80А00. Это и есть тот самый драйвер, который нам нужен! А впрочем, этого можно и не делать, поскольку имя «неправильного» драйвера и без того присутствует на голубом экране;

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

Таблица А.1. Физический смысл наиболее популярных Bug Check-кодов с краткими пояснениями. Определение рейтинга популярности Bug Check-кодов осуществлялось путем подсчета упоминаний о них в конференциях Интернета (спасибо старику Googly)

Hex-код Символьное имяОписание

ОхОА IRQLNOTLESSOREQUAL Драйвер попытался обратиться к странице памяти

на уровне DISPATCH LEVEL или более высоком, что и привело к краху, поскольку менеджер виртуальной памяти работает на более низком уровне (это частая ошибка разработчиков, и, чтобы беда не застала вас врасплох, тщательно тестируйте все драйверы, устанавливаемые в систему. В состав DDK входит замечательная утилита driver verifier, — которая гоняет драйверы в хвост и гриву). Источником сбоя может быть и BIOS, и драйвер, и системный сервис (особенно этим грешат вирусные сканеры и FM-тюнеры)- Как вариант — проверьте кабельные терминаторы на SCSI-накопителях и Master/Slayer на IDE, отключите кэширование памяти в BIOS. Если и это не поможет, обратитесь к четырем параметрам Bug Check-кода, содержащим ссылку на память, к которой осуществлялся доступ, уровень IRQL, тип доступа (чтение/запись) и адрес машинной инструкции драйвера


Таблица А.1 (продолжение) Hex-код Символьное имя

Oxli KMODEEXCEPTIONNOTHANDLED

0x24 NTFSFILESYSTEM

0х2Е DATA BUS ERROR

0x35 N0 M0RE IRP STACK L0CATI0NS

Описание

Компонент ядра возбудил исключение и «забыл» его обработать; номер исключения содержится в первом Bug Check-параметре. Обычно он принимает одно из следующих значений-0x80000003 (STATUSBREAKPOINT): встретилась программная точка останова — отладочный рудимент, по небрежности не удаленный разработчиком дравйера; (0хС0000005) STATUSACCESSVIOLATION: доступ к запрещенному адресу (четвертый Bug Check-параметр уточняет, к какому) — ошибка разработчика; (0хС000021А) STATUS SYSTEM PROCESS TERMINATED: сбой процессов CSRSS и/или Winlogon, источником которого могут быть как компоненты ядра, так и пользовательские приложения; обычно это происходит при заражении машины вирусом или нарушении целостности системных файлов. (0хС0000221) STATUS IMAGE CHECSUM MISMATCH: целостность одного из системных файлов оказалась нарушена; второй Bug Check-параметр содержит адрес машинной команды, возбудившей исключение

Проблема с драйвером NTFS.SYS, обычно возникающая вследствие физического разрушения диска, реже — при остром недостатке физической оперативной памяти

Драйвер обратился к несуществующему физическому адресу; если только это не ошибка драйвера; оперативная память и/или кэш-память процессора (видеопамять) неисправны или же работают на запредельных тактовых частотах

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


Hex-код Символьное имя

0x3F NOMORESYSTEMPTES

0x50 PAGE FAULT IN NONPAGED AREA

0x58 FTDISK INTERNAL ERROR

0x76 PROCESSHASLOCKEDPAGES

Описание

Результат сильной фрагментации

таблицы РТЕ, приводящей

к невозможности выделения

затребованного драйвером блока памяти;

обычно это характерно

для аудио/видеодрайверов,

манипулирующих огромными

блоками памяти и к тому же

не всегда их вовремя освобождающих;

для решения проблемы попробуйте

увеличить кол-во РТЕ

(до 50 ООО максимум) в следующей ветке

peecTpa:HLLM\SYSTEM\

CurrentControlSet\Control\

Session Manager\Memory

Management\SystemPages

Обращение к несуществующей странице памяти, вызванное либо неисправностью оборудования (как правило — оперативной-, видео- или кэш-памяти), либо некорректно спроектированным сервисом (этим грешат многие антивирусы, в том числе Касперский и Доктор Веб), либо разрушениями NTFS-тома (запустите chkdsk с ключами /f и /г), также попробуйте запретить кэширование памяти в BIOS

Сбой RAID-массива — при попытке загрузки с основного диска система обнаружила, что он поврежден, тогда она обратилась к его зеркалу, но таблицы разделов не оказалось и там

Драйвер не смог освободить

залоченные страницы после завершения

операции ввода/вывода;

для определения имени дефектного

драйвера следует обратиться

к ветке реестра:

HKLM\SYSTEM\CurrentControlSet\ Control\Session Manager\ Memory Management, и установить параметр . TrackLockedPages типа DWORD в значение 1, потом перезагрузить систему, после чего та будет сохранять трассируемый стек, и, если нехороший драйвер вновь начнет «чудить», возникнет BSOD с Bug Check-кодом ОхСВ, позволяющим определить виновника



0 ... 88 89 90 91 92 93 94 ... 102