Роман Клименко - Недокументированные и малоизвестные возможности Windows XP
Системный монитор
После ввода в командной строке Выполнить команды perfmon.msc консоль управления Microsoft обращается к содержимому ветвей реестра HKEY_CURRENT_USERSoftwareMicrosoftSystemMonitor и HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib, параметры которых будут рассмотрены чуть позже. После ввода команды перед вами отобразится окно консоли Производительность, открытое на ActiveX-объекте Системный монитор (рис. 11.1).
Рис. 11.1. Окно консоли Производительность
С помощью ActiveX-объекта Системный монитор можно проследить работу какого-либо оборудования, установленного на компьютере, в реальном режиме времени. При этом существует множество параметров работы оборудования, которые можно просмотреть (с помощью так называемых счетчиков).
Окно системного монитора состоит из трех областей — области панели инструментов системного монитора (расположена вверху консоли и содержит набор кнопок быстрого доступа), области для отображения результатов работы устройств (средняя область) и области счетчиков, за которыми выполняется слежение (расположена внизу консоли).
Добавление счетчиков
Для примера попробуем добавить счетчики производительности. Для начала удалите все используемые в данный момент счетчики. Для этого нужно выделить счетчик в области счетчиков и нажать клавишу Delete. После этого вызовите контекстное меню в любой из областей системного монитора и выберите команду Добавить счетчики. Это приведет к отображению диалогового окна, приведенного на рис. 11.2.
Рис. 11.2. Окно добавления счетчиков
С помощью данного окна можно определить, счетчики какого компьютера будут подключаться к консоли (локального или любого другого, подключенного к сети), определить устройство (список Объект), за работой которого вы будете следить, а также определить сами счетчики (переключатель Выбрать счетчики из списка) параметров работы устройства, которые будут отслеживаться. После выбора счетчика в правом окне можно выбрать экземпляр устройства, работа которого будет отслеживаться. На рис. 11.2 отображено только два экземпляра устройства — _Total и 0. Экземпляр 0 определяет первый процессор, установленный в системе, а экземпляр _Total определяет слежение за всеми процессорами, установленными на компьютере (при этом будет выводиться среднее арифметическое данных по работе процессоров). Если на компьютере установлен только один процессор, то экземпляр _Total эквивалентен экземпляру 0, но если бы компьютер содержал большее количество установленных процессоров, то присутствовали бы и другие экземпляры устройств: 1 — для второго процессора, 2 — для третьего процессора и т.д.
ПРИМЕЧАНИЕ
Если значение DWORD-параметра Disable Performance Counters, расположенного в ветви системного реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib, будет равно 1, то будет запрещено добавление счетчиков, а также работа с ActiveX-объектом Системный монитор. Если значение данного параметра будет равно 1, то список счетчиков просто-напросто будет пуст. Аналогичного результата можно добиться, если присвоить DWORD-параметру Updating той же ветви реестра значение, равное 0.
ВНИМАНИЕ
Название экземпляра Total можно изменить на любое другое. Для этого применяется параметр строкового типа TotalInstanceName, расположенный в ветви реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionPerflib. При этом следует учитывать, что все счетчики, загруженные до изменения значения параметра TotalInstanceName, работать не будут.
Если просмотреть список объектов, за которыми можно следить, а также количество различных счетчиков, реализованных для них, можно ужаснуться. Что же из этого многообразия выбрать? Частично решить этот вопрос вам поможет кнопка Объяснение, после выбора счетчика и нажатия которой перед вами отобразится диалоговое окно с описанием того, за чем же следит данный счетчик. Вам также могут помочь советы профессионалов, которые предлагают следить за следующими компонентами (если необходимо определить общий уровень производительности компьютера или устройства, которые пора улучшить) компьютера: Процессор, Память, Система и Физический диск. Вкратце рассмотрим наиболее интересные счетчики данных устройств.
ПРИМЕЧАНИЕ
В любом случае, здесь не будут рассмотрены все объекты, счетчики которых можно использовать, так как количество объектов на различных компьютерах может быть разное. Это связано с тем, что любая служба может добавить свои собственные счетчики. Для этого достаточно в параметре строкового типа Library указать библиотеку, содержащую функции работы с новыми счетчиками. Параметр расположен в разделе Performance ветви реестра, хранящей сведения о данной службе (на страницах книги уже несколько раз упоминалось, что настройки служб находятся в отдельных разделах ветви реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices). Можно также удалить возможность работы со счетчиками данного объекта, просто удалив раздел Performance (или переименовав его). Но можно поступить и намного проще — просто запретить работу счетчиков данного объекта. Для этого необходимо в разделе Performance данной службы создать DWORD-параметр Disable Performance Counters и присвоить ему значение 1.
Основные параметры раздела Performance неинтересны и содержат названия функций библиотеки для работы со счетчиками.
Для процессора это следующие счетчики.
■ % загруженности процессора — в зависимости от экземпляра устройства определяет процент загруженности конкретного процессора или всех процессоров, установленных на компьютере. Аналогичную информацию можно просмотреть и в Диспетчере задач Windows (на вкладке Быстродействие). Если процессор постоянно загружен на 70-90%, значит, пора покупать более мощный процессор.
■ % времени прерываний — в зависимости от экземпляра устройства определяет процент времени загруженности конкретного процессора или всех процессоров, установленных на компьютере, в течение которого процессор обрабатывает различные аппаратные прерывания. Если показания данного счетчика колеблются в пределах 25-35%, стоит также подумать о более мощном процессоре.
Для памяти это следующие счетчики.
■ Обмен страниц в секунду — определяет количество страниц, считываемых или записываемых на диск в течение одной секунды. Как правило, страницы записываются на диск в том случае, если оперативная память компьютера исчерпана и системе приходится использовать файл подкачки. Иными словами, чем меньше показания данного счетчика, тем лучше. В случае большого объема обмена страниц (имеется в виду обмен страницами в течение всего сеанса работы пользователя, а не временный обмен, который может быть ассоциирован записью информации на диск (а следовательно, не отображает реальную картину загруженности памяти)) рекомендуется купить дополнительную планку оперативной памяти.
■ Ошибок страницы в секунду — указывает количество ошибок доступа к оперативной памяти, возникающих при отсутствии в оперативной памяти необходимых данных. Как правило, после выявления ошибки системе приходится обращаться к содержимому жесткого диска за получением необходимой информации и повторного помещения ее в память, что занимает большое количество времени (сравнительно). При показаниях данного счетчика, превышающих значение 5, рекомендуется купить дополнительные планки оперативной памяти.
■ Доступно байт — определяет количество свободной в данный момент виртуальной памяти. Если показания этого счетчика постоянно колеблются в пределах 10-20 Мбайт, рекомендуется купить дополнительные планки оперативной памяти.
Для физического диска это следующие счетчики.
■ % активности диска — определяет процент времени, которое жесткий диск тратит на удовлетворение запросов на чтение/запись данных. Если показания данного счетчика долгое время колеблются в районе 80-100%, то необходимо подумать над покупкой более быстрого жесткого диска или дополнительного объема оперативной памяти.
■ Текущая длина очереди диска — указывает количество запросов на выполнение чтение/запись на диск, ожидающих своего выполнения в очереди. Показания счетчика, отображающие больше двух запросов в очереди, уже считаются поводом покупки дополнительной оперативной памяти или более быстрого жесткого диска.
Для системы это следующий счетчик.
Длина очереди процессора — определяет количество процессов, ожидающих своего выполнения в очереди процессов. Показания счетчика, отображающие больше двух процессов, уже считаются поводом покупки более производительного процессора.
ПРИМЕЧАНИЕ
Названия счетчиков, а также описания их работы на разных компьютерах могут отличаться. Это связано с тем, что сведения о названиях счетчиков и их описания хранятся не в файле библиотеки, а непосредственно в реестре. Для их хранения применяются два параметра REG_MULTI_SZ-типа ветви реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPerflib 19 (для англоязычной версии операционной системы используется конечный подраздел 009). Данная ветвь реестра содержит два параметра — Counter и Help. Первый из них определяет названия счетчиков, а второй — их описание.