Примечание
В операционной системе Windows ХР можно было самостоятельно сгенерировать «синий экран» с кодом 0х000000Е2. Для этого нужно было присвоить параметру REG_DWORD-типа CrashOnCtrlScroll, расположенному в ветви реестра HKEY_LOCAL_MACHINE\ SYSTEM\CurrentControlSet\Services\i8042prt\Parameters, значение 1. После этого (после перезагрузки компьютера) можно будет вызвать «синий экран», дважды нажав клавишу Scroll Lock, удерживая при этом нажатой правую клавишу Ctrl.
Данная возможность поддерживается только клавиатурами, использующими стандартный драйвер операционной системы i8042prt.sys. Как правило, это клавиатуры, работающие через порт PS/2.
Операционная система Windows Vista также содержит данный драйвер, и он тоже поддерживает параметр CrashOnCtrlScroll.
Чтобы отобразить окно Загрузка и восстановление, нужно нажать кнопку Параметры в области Загрузка и восстановление. Окно содержит два основных поля: Загрузка операционной системы и Отказ системы. Первую область мы рассмотрели, когда настраивали параметры загрузочного меню Windows Vista, поэтому сейчас обратим внимание только на вторую.
Область Отказ системы содержит три флажка, установленных по умолчанию:
• Записать событие в системный журнал – определяет, будет ли записываться сообщение об ошибке в системный журнал Windows Vista;
• Выполнить автоматическую перезагрузку – указывает, будет ли выполняться автоматическая перезагрузка компьютера при отображении «синего экрана смерти»;
• Заменять существующий файл дампа – определяет, будет ли выполняться перезапись файла дампа содержимого оперативной памяти (memory, dmp), если он уже существует.
Виды дампов памяти. С помощью области Отказ системы можно определить, будет ли вообще создаваться дамп содержимого оперативной памяти при возникновении ошибки, и если будет, то какой. Для этого используется раскрывающийся список области Запись отладочной информации. Он содержит следующие элементы.
• (отсутствует) – не создавать дамп памяти.
• Малый дамп памяти (64 КБ) – создает малый дамп памяти размером 64 Кбайт, содержащий только информацию об ошибке. Все малые дампы памяти хранятся в каталоге %systemroot%\Minidump (в виде отдельных файлов с именами в форматетз_пз_<месяц><день><год>-<порядковый номер файла>.dmp).
Малый дамп памяти включает в себя следующие данные:
– список драйверов, загруженных во время возникновения ошибки;
– контекст процессора (PRCB), который привел к возникновению ошибки;
– сведения о процессе, вызвавшем ошибку, и контекст его ядра (EPROCESS);
– сведения о процессе, поток которого вызвал ошибку, и его контекст ядра (ETHREAD);
– стек вызовов в режиме ядра для потока, который привел к ошибке.
Следует обратить внимание на то, что малый дамп памяти можно создавать только в том случае, если размер используемого операционной системой файла подкачки (расположенного на загрузочном томе) равен как минимум 2 Мбайт.
Данный вид дампа памяти можно загружать с помощью программы Dumpchk.ехе. Она анализирует дамп памяти, выводит его содержимое в удобочитаемом виде, а также указывает на секции, в которых, возможно, и возникла ошибка. Основной синтаксис данной программы: Dumpchk.exe <параметры> <имя файла малого дампах
• Дамп памяти ядра – создает только дамп оперативной памяти, содержащей ядро операционной системы. Данный тип дампа используется по умолчанию. При этом в каталоге %systemroot% будет создаваться файл memory, dmp. Размер файла memory. dmp будет равен примерно одной трети от всего объема оперативной памяти компьютера.
Дамп памяти ядра хранит содержимое памяти, выделенное для:
– ядра;
– HAL;
– драйверов режима ядра и других программ режима ядра.
Данный вид дампа памяти можно загружать в стандартные символьные отладчики операционной системы.
• Полный дамп памяти – вместо дампа ядра операционной системы создается полный дамп оперативной памяти. При этом создается файл memory.dmp, расположенный в каталоге %systemroot%, который хранит содержимое всей оперативной памяти компьютера на момент возникновения ошибки. При следующем возникновении ошибки содержимое файла memory. dmp будет перезаписано.
Следует обратить внимание на то, что полный дамп памяти можно создавать только в том случае, если размер используемого операционной системой файла подкачки как минимум на 1 Мбайт больше объема всей оперативной памяти компьютера. Кроме того, полный дамп памяти нельзя создавать на компьютерах с 32-битной операционной системой, на которых установлено более 2 Гбайт оперативной памяти.
Данный вид дампа памяти можно загружать в стандартные символьные отладчики операционной системы.