Windows Vista. Для профессионалов - Роман Клименко
Шрифт:
Интервал:
Закладка:
Варианты работы DEP. Как программная, так и аппаратная реализация DEP поддерживает четыре варианта работы.
• OptIn – используется по умолчанию. Механизм DEP защищает только основные системные файлы, например стеки потоков и страницы пользовательского режима.
• OptOut – механизм DEP включен для всех программ, запускаемых пользователем. При этом вы можете указать программы-исключения с помощью вкладки Предотвращение выполнения данных. Программы-исключения заносятся в реестр в виде параметров строкового типа, названия которых определяют путь к программам-исключениям. Значение же параметров равно DisableNXShowUI. Эти параметры хранятся в ветви реестра HKEY_LOCAL_MACHINESOFTWARE MicrosoftWindowsNTCurrentVersionAppCompatFlagsLayers.
• AlwaysOn – механизм DEP включен для всех программ, запускаемых пользователем. При этом нельзя указать программы-исключения с помощью вкладки Предотвращение выполнения данных. Даже те программы, для которых запрещен запуск с включенным DEP, загружаются с ним.
• AlwaysOf f – механизм DEP всегда отключен, даже если он аппаратно поддерживается процессором.
Чтобы изменить вариант работы механизма DEP, нужно указать новый вариант с помощью программы bcdedit.ехе. Синтаксис этой программы был описан в первых главах данной книги.
Окно Загрузка и восстановление
Сразу же хотелось бы рассмотреть еще одно окно, доступ к которому можно получить с помощью вкладки Дополнительно окна Свойства системы. Оно не влияет на интерфейс операционной системы Windows Vista, но позволяет настроить поведение операционной системы при возникновении ошибок.
...Примечание
В операционной системе Windows ХР можно было самостоятельно сгенерировать «синий экран» с кодом 0х000000Е2. Для этого нужно было присвоить параметру REG_DWORD-типа CrashOnCtrlScroll, расположенному в ветви реестра HKEY_LOCAL_MACHINE SYSTEMCurrentControlSetServicesi8042prtParameters, значение 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 Гбайт оперативной памяти.
Данный вид дампа памяти можно загружать в стандартные символьные отладчики операционной системы.
...Примечание
Параметры работы с дампами памяти можно просмотреть и с помощью свойств класса Win32_OSRecoveryConfiguration, принадлежащего пространству имен rootcimv2. Например, данный класс поддерживает следующие свойства: AutoReboot (определяет, будет ли выполняться автоматическая перезагрузка компьютера при возникновении критической ошибки), DebugFilePath (определяет путь к файлу, в который будут помещаться данные при создании полного дампа памяти), DebuglnfoType (определяет тип создаваемого при возникновении ошибки дампа памяти), KernelDumpOnly (определяет, будет ли выполняться только создание дампа памяти ядра), Name (ключевое свойство, определяющее операционную систему, настройки которой хранятся в экземпляре класса), OverwriteExistingDebugFile (определяет, будет ли новый дамп памяти перезаписывать старый), SendAdminAlert (определяет, будет ли при возникновении ошибки отправляться сообщение на административную консоль). WriteToSystemLog (определяет, будет ли при возникновении ошибки информация о ней записываться в стандартный журнал операционной системы).
В операционной системе Windows Vista вы можете самостоятельно создать дамп памяти запущенного в данный момент процесса. Для этого достаточно запустить программу Windows Task Manager (комбинация клавиш CtrL+Shift+Esc), перейти на вкладку Процессы, найти нужный процесс и в его контекстном меню выбрать команду Create Dump FiLe. После этого начнется создание дампа памяти, по завершении которого перед вами отобразится путь к каталогу, в котором был создан дамп памяти данного процесса.
Использование групповых политик
Для настройки оболочки можно применять групповые политики, расположенные в подразделе Конфигурация пользователя → Административные шаблоны → Меню «Пуск» и панель задач.
Все описанные далее групповые политики изменяют значения параметров типа REG_DWORDBeTBHpeecTpaHKEY_CURRENT_USERSoftware MicrosoftWindowsCurrentVersionPoliciesExplorer.
• Отключить слежение за действиями пользователя – установка этой политики позволяет отключить стандартный механизм операционных систем семейства Windows, направленный на слежение за действиями пользователя. Например, именно с помощью этого механизма возможна работа персонализированного меню Пуск и персонализированных меню различных программ. Если вы не пользуетесь этой возможностью, то для увеличения быстродействия компьютера ее можно отключить.
Политика влияет на значение параметра Nolnstrumentation.
• Не использовать сопоставление ярлыков оболочки на основе поиска – установка данной политики позволяет отключить стандартный механизм операционных систем семейства Windows, направленный на восстановление ярлыков, не работающих из-за перемещения файла, на которые они указывали. После установки данной политики система не будет выполнять поиск перемещенного файла на томах NTFS.