Мониторинг процессов и использования системных ресурсов
Process Resource Monitor (Pmon) показывает «моментальный снимок» используемых системных ресурсов и выполняемых процессов. После запуска (вводом pmon в командной строке) эта утилита собирает информацию об использовании ресурсов и выполняемых процессах в локальной системе и выводит результаты в консольное окно. Статистика автоматически обновляется каждые пять секунд. Pmon продолжает работу, пока вы не нажмете клавишу Q для выхода; нажатие любой другой клавиши приводит к обновлению информации.
Перенаправлять вывод утилиты Pmon нельзя, ее применение возможно только на локальном компьютере. Для проверки ресурсов удаленного компьютера используется удаленный доступ к компьютеру через Remote Desktop (Удаленный рабочий стол). Кроме того, Pmon не совместима с командой REMOTE.
Значения Pmon даются в килобайтах (Кб) и предоставляют следующую информацию.
- Memory, Avail — информация об общем объеме оперативной памяти (RAM) в системе. Memory показывает физический объем RAM, a Avail — не используемую в данный момент RAM.
- InRam Kernel — информация о памяти, занятой ядром операционной системы. Критически важные блоки памяти ядра всегда должны помещаться в RAM и не могут быть выгружены в виртуальную память. Этот тип памяти ядра обозначается как InRam Kernel, Остальная часть памяти ядра может быть выгружена в виртуальную память и показывается после InRam Kernel.
- Commit, Limit, Peak — сведения об объеме переданной (committed) физической и виртуальной памяти. Commit указывает объем физической памяти, для которой зарезервировано место в страничном файле (page file) на диске. Далее сообщается текущий объем переданной виртуальной памяти. Limit указывает объем виртуальной памяти, которая может быть передана без увеличения размера страничного файла (или файлов). Peak отражает максимальный объем памяти, использовавшийся системой с момента ее запуска. Если разница между общим объемом доступной памяти и используемой переданной памятью почти все время невелика, увеличение объема физической памяти повысит производительность системы. Если максимальное использование памяти отличается не более чем на 10% от значения Limit, то целесообразно увеличить объем физической или виртуальной памяти (либо и той, и другой).
- Pool N и Р — сведения о пулах подкачиваемой (paged pool) и неподкачиваемой памяти (non-paged pool) соответственно. Пул первого вида — это системная память, которая может быть сброшена на диск, как только перестает использоваться, а пул второго — системная память, не выгружаемая на диск ни при каких условиях. Pool N соответствует размеру пула неподкачиваемой памяти, а значение, следующее за ним (Pool Р), — размеру пула подкачиваемой.
Информация об использовании ресурсов индивидуальными процессами.
Вслед за двумя строками статистики, относящейся к памяти, отображается информация об использовании ресурсов индивидуальными процессами. Эти данные предоставляют массу сведений о выполняемых процессах, которые помогут выявить процесс, пожирающий такие системные ресурсы, как процессорное время и память. Соответствующие поля содержат значения:
- CPU — процентная доля процессорного времени для процесса;
- CpuTime — общее процессорное время, выделенное процессу с момента его запуска;
- Mem Usage — объем памяти, занимаемой процессом;
- Mem Diff — изменение объема занимаемой процессом памяти с момента последнего обновления данных;
- Page Faults — число ошибок страниц. Ошибка страницы происходит, когда процесс запрашивает страницу памяти, а система не может ее найти в заданном месте. Если страница находится в другом месте памяти, ошибку страницы называют программной (soft page fault), а если запрошенная страница должна быть прочитана с диска — аппаратной (hard page fault). Большинство процессоров способно обрабатывать большое количество программных ошибок страниц. Однако аппаратные ошибки страниц вызывают значительные задержки, и, если их много, следует подумать об увеличении объема физической памяти или об уменьшении размера системного кэша. Как определить число аппаратных ошибок страниц, см. в разделе «Мониторинг подкачки памяти для индивидуальных процессов» далее в этой главе;
- Fits Diff — отражает изменение числа ошибок страниц для процесса с момента последнего обновления данных;
- Commit Charge — показывает объем виртуальной памяти, переданной процессу;
- Usage NonP/Page — показывает задействованные процессом объемы пулов неподкачиваемой и подкачиваемой памяти. Вы должны обращать внимание на процессы, которые расходуют большой объем пула неподкачиваемой памяти. Если на сервере недостаточно свободной памяти, эти процессы могут быть причиной большого числа ошибок страниц;
- Pri — сообщает приоритет процесса. Приоритет определяет, сколько системных ресурсов может быть выделено процессу. Стандартные приоритеты таковы: Low (низкий) (4), Below Normal (ниже обычного) (6), Normal (обычный) (8), Above Normal (выше обычного) (10), High (высокий) (13) и Real-Time (реального времени) (24)*. У большинства процессов по умолчанию обычный приоритет. Наивысший приоритет предоставляется процессам реального времени.