Главная » Статьи » Windows » Службы и процессы |
Process Explorer. Обзор некоторых возможностей
Process Explorer – альтернатива стандартному Task Manager-у.
Эта утилита, как и многие другие утилиты Sysinternals, здорово расширяет возможности контроля и
управления системой. Главное новшество только что вышедшей 14-ой версии —
возможность мониторить сетевую активность процессов. Далее небольшой обзор
возможностей этой утилиты, которые считаю наиболее полезными для
себя. Для справки. С 2006 года Sysinternals была приобретена Microsoft, а
ключевая фигура этой компании – Марк
Руссинович с тех пор работает в Microsoft. Марк известен своими утилитами,
книгой Windows Internals, блогом и является признанным специалистом по архитектуре
Windows. Содержание:
Колонки в главном окнеДля
каждого процесса:
Сервисы внутри svchostПри наведении курсора на svchost (процесс
который хостит в себе сервисы) можно видеть перечень сервисов – довольно
полезная фича. Суммарные графики активности, процесс с максимальной активностьюСверху основного окна расположены графики основных суммарных
параметров – память, дисковая, сетевая и CPU активность. При перемещении курсора
по истории параметра, показан процесс который дал максимальный вклад в это
значение в данный момент времени. Кроме того в тултипе есть информация о
мгновенном значении параметра (зависит от частоты обновления). На следующей
картинке — график сетевой активности. В окне «system information» графики собраны вместе, здесь удобнее смотреть корреляцию параметров. Суммарные графики активности в трее, процесс с максимальной активностьюОчень удобная фича – выведение в трей иконок с графиками
суммарной активности. Там могут быть графики дисковой активности, CPU и память.
Я использую первые два – поглядываю туда, при возникновении вопросов достаточно
навести курсор и узнать какой процесс дает максимальный вклад в параметр. К
сожалению сетевую активность туда нельзя выставить, я надеюсь это вопрос
времени. Сетевые соединения процессаВ свойствах процесса в закладке TCP/IP можно посмотреть текущие активные соединения. К сожалению сетевая активность по ним не видна, эта функциональность пока доступна в другой утилите – tcpview. Потоки процесса, их активность, стек потока с загрузкой символовВ
свойствах процесса в закладке threads видны все его потоки и загрузка CPU по
потокам. Допустим хочется рассмотреть стек потока, который интенсивно что-то
делает или висит. Для этого сперва надо его распознать, допустим по загрузке
CPU, потом полезно приостановить процесс, чтобы спокойно рассмотреть его
состояние — это можно сделать прямо в этом окне по кнопке "suspend”. Далее
выделяем поток и нажимаем "stack”. В большинстве случаев стек будет начинаться в
недрах системы и обрываться не совсем понятным образом. Дело в том, что не имея
отладочной информации по системным библиотекам не удастся корректно развернуть
стек и разобраться в нем. Есть решение – нужно сконфигурировать доступ с
символьной информации с сайта Microsoft. Надо проделать несколько шагов:
Информация по использованию памяти в системеВ окне «system
information» закладка «memory». Здесь есть два графика – commit и physical.
Physical – использование физической памяти без учета файлового кэша, под который
уходит все что остается. Commit – сколько памяти выделено для процессов включая
используемую виртуальную память. Под графиками в разделе «Commit Charge» есть
поля Limit и Peak. Limit определяется суммой физической и виртуальной памяти,
т.е. это максимальный суммарный объем памяти, который может выделить система.
Peak – это максимум графика Commit за время работы утилиты. Процентные
соотношения Current/Limit и Peak/Limit удобны для быстрой оценки насколько
состояние системы приближалось к критическому лимиту по доступной памяти.
Handles и DLL процессаВ главном окне можно включить разделитель и
снизу отображать DLL или handles выделенного процесса. При борьбе с вирусами и
отладке программ это бывает очень полезно. На картинке — список handles для
opera, первый handle файловой системы – это flash ролик в временном
каталоге. Для DLL можно добавить
колонку с полным путем к образу, отсортировав по нему, проанализировать нет ли
каких подозрительных модулей. На картинке видно, что подключен модуль от
Logitech, есть подозрение что это что-то типа хука внедряющегося во все
процессы. Следующим пунктом посмотрим где он еще встречается. Поиск handles и DLLПоиск по имени handle или DLL во всех процессах.
Вводим имя DLL от Logitech из предыдущего пункта и убеждаемся что подключается
он почти везде. Другой пример – надо
понять, кто блокирует файл или работает с папкой. Вводим часть пути и находим
все процессы, которые открыли подобные объекты системы. Можно щелкнуть на
элементе из списка и перейти к процессу, при этом будет подсвечен
соответствующий handle или DLL. PS Для отображения
некоторых полей (например сетевая статистика) требуются административные
привилегии. Повысить привилегии в уже запущенном Process Explorer можно с
помощью команды в меню File. Только при наличии таких привилегий есть
возможность добавить такие колонки. Я считаю такое поведение неверным, т.к.
скрывает потенциальные возможности приложения от пользователя. Если поля
добавлены и при следующем запуске нет административных прав, то они будут
пустыми. Можно задать ключ "/e" в командной строке, чтобы форсировать поднятие
привилегий при старте Process Explorer. | |
Просмотров: 2425 | Рейтинг: 0.0/0 |
Всего комментариев: 0 | |