Файл: Руссинович М., Маргозис А. Утилиты Sysinternals. Справочник администратора 2012.pdf

ВУЗ: Не указан

Категория: Книга

Дисциплина: Операционные системы

Добавлен: 29.10.2018

Просмотров: 32991

Скачиваний: 742

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

242  Часть 

II   

Работа с утилитами

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

Компоненты режима ядра могут указывать уровень серьезности каждого 

отладочного сообщения. В Windows Vista и последующих версиях выходные 
данные режима ядра можно фильтровать по уровню серьезности. Если хоти-
те получать все выходные данные ядра, выберите в меню Capture (Захват) 
команду  Enable Verbose Kernel Output (Включить подробные выходные 
данные ядра)
. Если этот параметр не включен, DebugView захватывает 
только выходные данные с уровнем серьезности «ошибка».

Можно настроить DebugView так, чтобы выходные данные отладки режи-

ма ядра передавались отладчику режима ядра или поглощались. Переключать 
режим передачи можно при помощи меню Capture (Захват) или значка Pass-
Through (Передача)
 на панели инструментов. Режим передачи позволяет 
просматривать выходные данные режима ядра в выходных буферах стандарт-
ного отладчика режима ядра и в DebugView одновременно.

Так как DebugView — интерактивная программа, ее нельзя запустить 

до входа в систему. Обычно для просмотра выходных данных отладки, сге-
нерированных до входа в систему, требуется подключать отладчик ядра с 
удаленного компьютера. Функция DebugView Log Boot предоставляет аль-
тернативу, захватывает выходные данные режима ядра во время запуска си-
стемы, держа эти данные в памяти и отображая их после входа в систему и 
интерактивного запуска DebugView. Если выбрать в меню Capture (Захват) 
команду  Log Boot (Запись загрузки), DebugView настроит свой драйвер 
ядра так, чтобы он загружался в начале следующей последовательности за-
грузки. Когда он загружается, он создает буфер размером 4 МБ, в который 
записывает подробные выходные данные отладки режима ядра, пока буфер 
не заполняется или пока DebugView не подключается к нему. Если запу-
стить DebugView с администраторскими правами и включенной функцией 
Capture Kernel (Захват в режиме ядра), DebugView проверит существова-
ние такого буфера в памяти ядра. Если буфер найден, DebugView отобра-
жает его содержимое. Настройка журнала загрузки требует администратор-
ских разрешений и применяется только при следующей загрузке.

Если выходные данные отладки режима ядра получаются во время про-

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

SIN_ch_07.indd   242

27.12.2011   14:30:28


background image

Утилиты для работы с процессами и диагностики 

Глава 7  243 

Чтобы открыть файл дампа краха для анализа в DebugView, выберите в 

меню File (Файл) команду Process Crash Dump (Обработать дамп краха)
DebugView выполнит в файле поиск буферов выходных данных отладки. 
Если они найдены, DebugView предложит ввести имя файла журнала, в ко-
тором будут сохранены выходные данные. Сохраненные файлы выходных 
данных можно загружать в DebugView для просмотра. Заметьте, что система 
должна быть настроена для создания дампа ядра или полного дампа (а не 
минидампа), иначе эта функция не будет работать. При выходе DebugView 
сохраняет все параметры настройки захвата и восстанавливает их при сле-
дующем запуске. Если программа была запущена с повышенными правами 
и получала выходные данные ядра или сеанса 0, то при следующем запуске 
от имени того же пользователя, но без администраторских прав, она покажет 
сообщение об ошибке и отключит эти параметры, так как не сможет полу-
чать данные из этих источников. Избежать появления таких ошибок можно, 
запуская DebugView с параметром 

/kn

, отключающим захват данных ядра, 

и параметром 

/gn

, отключающим захват глобальных данных.

Поиск, фильтрация и выделение выходных данных

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

Очистка экрана
Чтобы очистить экран от всего полученного отладочного текста, нажмите 
Ctrl+X или щелкните на значке Clear (Очистить) на панели инструментов. 
Очистку экрана может инициировать источник выходных данных отладки: 
когда в любом месте входной строки встречается текст DBGVIEWCLEAR 
(все буквы заглавные), DebugView очищает экран. При очистке выходных дан-
ных порядковый номер и таймер прошедшего времени сбрасываются на 0.

Поиск
Если нужно найти строку, содержащую определенный текст, нажмите 
Ctrl+F, чтобы открыть окно Find (Найти). Если указанный текст совпадает 
с текстом в окне с выходными данными, DebugView выделяет следующую 
подходящую строку и отключает функцию автопрокрутки, чтобы эта строка 
отображалась в окне. Чтобы повторить поиск, нажмите F3. Чтобы изменить 
направление поиска, нажмите Shift+F3.

Фильтрация
Еще один способ изоляции нужных выходных данных — фильтрация. 
Щелкните кнопку Filter/Highlight (Фильтровать/Выделить) на панели 
инструментов DebugView, чтобы открыть окно Filter (Фильтр) (рис. 7-14). 
Поля Include (Включить) и Exclude (Исключить) используются для указа-
ния условий для включения и исключения входящих строк отладочного тек-
ста на основе их содержимого. В секции Highlight (Выделение) можно вы-

SIN_ch_07.indd   243

27.12.2011   14:30:28


background image

244  Часть 

II   

Работа с утилитами

брать цвет для выделения строк в зависимости от их содержимого. Условия 
фильтрации и выделения можно сохранить на диске и повторно загружать в 
дальнейшем (выделение обсуждается в следующем разделе.)

Рис. 7-14.  Окно DebugView Filter

В поле Include введите текст, содержащийся в строках выходных данных, 

которые вы хотите отображать в окне DebugView, а в поле Exclude — текст, 
строки с которым отображаться не должны. Можно ввести несколько вы-
ражений, разделив их точкой с запятой. Не включайте пробелы в выраже-
ния фильтра, если не хотите, чтобы они стали частью фильтра. Заметьте, 
что символ «*» интерпретируется как знак подстановки, а выражения не-
чувствительны к регистру и применяются также к части стоки, содержащей 
идентификатор процесса, если идентификатор включен в выходные данные. 
По умолчанию включено все («*»), и ничего не исключено.

Если вы хотите включать в выходные данные строки, содержащие 

текст «win», «desk» и «session», если только они не содержат также текст 
«error», введите в фильтр Include текст «win;desk;session» (без кавычек), а в 
фильтр Exclude — текст «error» (как на рис. 7-14). Если вы хотите, чтобы в 
DebugView отображались только данные, имеющие текст «MyApp:» и слово 
«severe», стоящее далее в строке, используйте знак подстановки в фильтре 
включения: «myapp:*severe».

Фильтрация применяется только к строкам и комментариям, добавлен-

ным после установки фильтра. Новые строки текста, удовлетворяющие 
условиям фильтрации, отображаются, а не удовлетворяющие строки отбра-
сываются, их нельзя будет вернуть, изменив правила фильтрации. Кроме 
того, изменение правил фильтрации не удаляет строки, уже отображающие-
ся в DebugView.

Если при выходе из DebugView действовали какие-то правила фильтра-

ции, DebugView покажет их в диалоговом окне при следующем запуске. 
Просто щелкните OK, чтобы продолжить использовать их, или укажите 
новые правила. Можно изменить их вручную, загрузить ранее сохраненный 
фильтр, щелкнув кнопку Load (Загрузить), или удалить фильтр, щелкнув 
кнопку Reset (Сбросить). Можно пропустить это окно и продолжить ис-
пользовать предыдущие правила, добавив в командную строку DebugView 
параметр /f.

SIN_ch_07.indd   244

27.12.2011   14:30:28


background image

Утилиты для работы с процессами и диагностики 

Глава 7  245 

Выделение
Выделение позволяет изменять цвет строк в зависимости от их текста. 
DebugView поддерживает до 20 отдельных правил выделения, каждое из ко-
торых имеет собственные цвета фона и текста. Синтаксис правил выделения 
такой же, как для фильтра включения.

Раскрывающийся список Filter (Фильтр) из группы Highlight (Выде-

ление) позволяет выбрать фильтр (с номером от 1 до 20), который вы хоти-
те изменить. По умолчанию каждый фильтр связан с комбинацией цветов, 
но не с правилом выделения. Чтобы установить правило для этого фильтра, 
введите текст правила в раскрывающийся список, показывающий комбина-
цию цветов. На рис. 7-14 первый фильтр (Filter 1) выделяет строки, содер-
жащие слово «Console».

Фильтры с меньшими номерами имеют преимущество перед фильтрами 

с большими номерами. Если строка текста подходит под правила фильтра 3 
и фильтра 5, она будет выделена цветами фильтра 3. При изменении правил 
выделения все строки на экране обновляются в соответствии с ними.

Чтобы изменить цвета, связанные с фильтром выделения, выбери-

те фильтр в раскрывающемся списке и щелкните кнопку Colors (Цвета)
Чтобы изменить цвет переднего плана, установите переключатель FG, выбе-
рите цвет и щелкните кнопку Select (Выбрать). Сделайте то же самое, уста-
новив переключатель BG, чтобы изменить цвет фона, и щелкните OK.

Сохранение и восстановление правил фильтрации и выделения
Кнопки Load (Загрузить) и Save (Сохранить) окна Filter (Фильтр) позво-
ляют сохранять и восстанавливать параметр фильтрации, включая правила 
включения, исключения и выделения, а также цвета выделения. DebugView 
использует для своих файлов параметров фильтрации расширение .INI, хотя 
формат этих файлов отличается от формата файлов инициализации.

Кнопка  Reset (Сброс) сбрасывает все правила фильтрации и выделе-

ния, возвращая параметры по умолчанию. Обратите внимание на то, что эта 
кнопка не восстанавливает стандартные цвета выделения.

Период журнала
Еще один способ настройки выходных данных DebugView — ограничение 
числа строк, отображаемых на экране. Выберите в меню Edit (Правка) ко-
манду History Depth (Период журнала), чтобы открыть одноименное окно. 
Введите число, и в окне DebugView будет сохраняться именно столько строк, 
а остальные будут удаляться. Значение 0 (ноль) отключает ограничение на 
число строк. Период журнала можно указать в командной строке, указав па-
раметр 

/h

 и число строк.

Нет необходимости использовать эту функцию для предотвращения за-

полнения всей виртуальной памяти системы при длительном мониторинге: 
DebugView следит за использованием системной памяти, предупреждает 
пользователя и приостанавливает получение выходных данных отладки, 
когда остается мало памяти.

SIN_ch_07.indd   245

27.12.2011   14:30:28


background image

246  Часть 

II   

Работа с утилитами

Сохранение, запись в журнал и печать

DebugView позволяет сохранять полученный отладочный вывод в файл при 
получении или по требованию. Сохраненные файлы можно открывать и ото-
бражать в DebugView, а также выводить на печать целиком или частично.

Можно сохранить содержимое окна DebigView в текстовом файле, выбрав 

в меню File (Файл) команду Save (Сохранить) или Save As (Сохранить 
как)
. По умолчанию используется расширение .LOG. Формат файлов — 
текст ANSI, разделенный знаками табуляции. Чтобы открыть сохраненный 
текст, выберите команду меню File | Open (Файл | Открыть) или укажите 
путь к файлу в командной строке:

dbgview c:\temp\wi n7-x86-vm.log

Запись в журнал
Чтобы выходные данные записывались в файл журнала сразу, при отобра-
жении, выберите в меню File (Файл) команду Log To File (Запись в файл)
При первом выборе этой команды или нажатии кнопки Log To File на панели 
инструментов DebugView открывает окно Log-To-File Settings (Параметры 
записи в файл)
, предлагающее указать путь к файлу (рис. 7-15). После этого 
команда Log To File и одноименная кнопка только включают и отключают 
запись в журнал. Чтобы сменить файл или изменить другие параметры за-
писи, выберите в меню File (Файл) команду Log To File As (Запись в фор-
мате…)
. (Если в текущий момент ведется запись в файл, выполнение этой 
команды приведет к отключению записи.)

Рис. 7-15.  Окно DebugView Log-to-File Settings

Перечислим остальные параметры настройки, доступные в диалоговом 

окне Log To File:
•  Unlimited Log Size (Неограниченный размер журнала) — позволяет 

файлу журнала расти без ограничений;

•  Create New Log Every Day (Создавать новый журнал каждый день) — 

размер файла журнала не ограничивается, но каждый день создается 
новый файл с текущей датой в имени. Можно также включить очистку 
экрана при создании нового файла;

•  Limit Log Size (Ограничить размер журнала) — файл журнала не уве-

личивается сверх указанного размера. Запись будет остановлена, если не 

SIN_ch_07.indd   246

27.12.2011   14:30:28