Что такое process explorer
Обзор утилиты Process Explorer от Sysinternals.com
Утилита не требует установки. Достаточно распаковать архив и запустить файл procexp.exe. Откроется главное окно утилиты, которое показано на рисунке ниже.
В верхней части окна в древовидной структуре перечислены все работающие в системе процессы. Помимо имени процесса выводится информация об использовании процессора, описание процесса, объем занятой памяти. Двойной щелчок по имени процесса открывает окно его свойств, пример которого показан ниже.
В нижней части главного окна показана детальная информация о выделенном в верхней части процессе. Это может быть список библиотек, используемых процессом или список хэндлов (открытых файлов, ключей реестра и т.д.). Двойной щелчок мыши по имени библиотеки или хэндла открывает окно свойств. Для получения описания библиотеки при помощи щелчка правой кнопки мыши по её имени можно открыть меню, выбор в котором пункта Google отправляет запрос в поисковую систему с именем выбранной библиотеки.
Для любого процесса при помощи щелчка правой кнопки мыши по имени процесса можно изменить его приоритет, завершить его выполнение или завершить выполнение процесса и его дерева. Полезная особенность Process Explorer заключается в том, что работу любого процесса можно приостановить (suspend), а потом возобновить (resume). Приостановка работы процесса может временно освободить занятые им ресурсы (процессор, сеть, жёсткий диск) для использования другими приложениями. Приостановив выполнение процесса можно определить, например, какой процесс открывает окна или проявляет повышенную сетевую активность. Это бывает необходимо сделать при подозрении на заражение компьютера вирусом или для пресечения работы рекламного программного обеспечения, которое устанавливается на компьютер без ведома пользователя.
Process Explorer может вывести скрытое окно приложения на экран. Некоторые программы не восстанавливают свой значок в трее, и если оболочка по каким-то причинам перезагружается, то после этого доступ к интерфейсу свёрнутой в трей программы получить будет невозможно. Придется завершать её через Диспетчер задач и запускать заново с потерей всех несохранённых данных. Воспользовавшись пунктом контекстного меню Bring to Front можно получить доступ к такому окну и сохранить данные.
Помимо прочего, при помощи Process Explorer можно выгрузить в текстовый файл список всех процессов с описаниями и объёмом занятой каждым из них памяти, запустить любое приложение, выключить, перезагрузить или заблокировать компьютер, найти используемые библиотеки и хэндлы, включить подсветку цветом определённых процессов и так далее. Всё это помогает контролировать работающие процессы и получать исчерпывающую информацию об использовании системных ресурсов.
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.
Обозреватель процессов v 16.43
По пометке Russinovich)
Опубликовано: 18 августа 2021 г.
скачать обозреватель процессов(2,5 МБ)
Запустите сейчас из Sysinternals Live.
Введение
Когда-нибудь интересует, какая программа открывает определенный файл или каталог? Теперь вы можете узнать. В обозревателе процессов отображаются сведения о том, какие дескрипторы и процессы DLL были открыты или загружены.
уникальные возможности обозревателя процессов позволяют отслеживать проблемы с версиями библиотек DLL или утечки, а также предоставлять сведения о том, как Windows и приложения работают.
Связанные ссылки
Скачать
скачать обозреватель процессов(2,5 МБ)
Запустите сейчас из Sysinternals Live.
Выполняется в:
Установка
Просто запустите Обозреватель процессов (procexp.exe).
Примечание об использовании символов
Если путь настроен на DBGHELP.DLL и путь к символам использует сервер символов, расположение DBGHELP.DLL также должно содержать SYMSRV.DLL, поддерживающих используемые пути к серверу. См. документацию по SymSrv или дополнительные сведения об использовании серверов символов.
Дополнительные сведения
Ниже приведены некоторые другие средства просмотра и сведения о библиотеках DLL, доступные в Sysinternals:
Process Explorer v16.43
By Mark Russinovich
Published: August 18, 2021
Download Process Explorer (2.5 MB)
Run now from Sysinternals Live.
Introduction
Ever wondered which program has a particular file or directory open? Now you can find out. Process Explorer shows you information about which handles and DLLs processes have opened or loaded.
The Process Explorer display consists of two sub-windows. The top window always shows a list of the currently active processes, including the names of their owning accounts, whereas the information displayed in the bottom window depends on the mode that Process Explorer is in: if it is in handle mode you’ll see the handles that the process selected in the top window has opened; if Process Explorer is in DLL mode you’ll see the DLLs and memory-mapped files that the process has loaded. Process Explorer also has a powerful search capability that will quickly show you which processes have particular handles opened or DLLs loaded.
The unique capabilities of Process Explorer make it useful for tracking down DLL-version problems or handle leaks, and provide insight into the way Windows and applications work.
Related Links
Download
Download Process Explorer (2.5 MB)
Run now from Sysinternals Live.
Runs on:
Installation
Simply run Process Explorer (procexp.exe).
The help file describes Process Explorer operation and usage. If you have problems or questions please visit the Process Explorer section on Microsoft Q&A.
Note on use of symbols
When you configure the path to DBGHELP.DLL and the symbol path uses the symbol server, the location of DBGHELP.DLL also has to contain the SYMSRV.DLL supporting the server paths used. See SymSrv documentation or more information on how to use symbol servers.
Learn More
Here are some other handle and DLL viewing tools and information available at Sysinternals:
Process Explorer позволяет:
— получать подробнейшую информацию о всех процессах, выполняющихся в среде Windows;
— получать доступ к важнейшим функциям управления процессами из главного меню или из контекстного меню выбранного процесса;
— управлять не только приложениями, но и службами системы (остановить, приостановить, возобновить, перезапустить);
— кроме функции принудительного завершения процессов (Kill), использовать функции приостановки (Suspend) и продолжения выполнения (Resume);
— управлять не только процессами, но и потоками (Threads), т.е. динамически внедряемыми в основной процесс программными модулями (DLL);
— изменять приоритеты выполняющихся процессов, их права доступа и разрешения, задавать соответствие процессорам в многопроцессорных (многоядерных) системах;
— создавать новые процессы с возможностью запуска от имени текущего пользователя, пользователя с ограниченными правами и администратора;
— в любой момент времени принудительно выполнять дампы памяти (Minidump или Fill Dump) с сохранением в выбранный файл;
— выполнять завершение работы Windows, завершение сеанса пользователя, переход в спящий режим, режим гибернации и блокировку рабочего стола;
В целом, Process Explorer позволяет получить подробнейшую картину активности процессов Windows и использования ресурсов системы.
Остальная часть дерева отображает иерархию реально выполняющихся в Windows процессов. Так, например, приложение служб и контроллеров SERVICES.EXE обеспечивает создание, удаление, запуск и остановку служб (сервисов) операционной системы, что и отображается в списке порождаемых им процессов.
Иерархический характер дерева процессов способствует визуальному восприятию родительски-дочерних отношений каждого активного процесса. Нижняя панель дает информацию обо всех DLL, загруженных выделенным в верхней панели процессом, открытых им файлах, папках, разделах и ключах реестра.
При выборе уровня System дерева процессов в нижней панели можно получить информацию обо всех загруженных драйверах системы, их описание, версию, путь исполняемого файла, адрес в оперативной памяти, размер. Кроме того, можно проверить цифровую подпись испольняемого файла, а также просмотреть строковые значения как в самом исполняемом файле, так и в оперативной памяти, выделенной под его выполнение.
Пункты основного меню File
Пункты основного меню Options
Пункты основного меню View
Пункты основного меню Process
  Панель инструментов Process Explorer во многом содержит те же кнопки, что и большинство утилит мониторинга от Sysinternals и позволяет быстро выполнить наиболее необходимые и часто повторяющиеся действия.
Кроме кнопок, в правой части панели отображаются графики использования ресурсов системы.
Примерный перечень действий :
Процедуру запуска Process Explorer с указанными правами можно оформить в виде командного файла, запускаемого от имени администратора.
Использование Process Explorer для поиска причин замедления работы системы.
Process Explorer удобно использовать для создания комфортной работы интерактивных приложений на фоне выполнения длительных ресурсоемких задач. Например, когда выполняется архивирование больших файлов с использованием алгоритма, требующего высокой степени использования центрального процессора. Работа пользователя за рабочим столом может сопровождаться замедлением реакции приложений и общим «подтормаживанием» системы. Process Explorer позволяет легко обнаружить процесс, максимально использующий ресурсы CPU и, например, понизить его приоритет с уровня Normal (8) до уровня Below Normal (6) или Idle (4). В результате, работа за рабочим столом пользователя с использованием интерактивных задач, работающих с приоритетом 8 станет заметно приятней.
Несколько сложнее выглядит ситуация, когда замедление видимого быстродействия системы не связано с выполнением ресурсоемких приложений, и сопровождается кратковременными «подвисаниями», рывками при перемещении окон или даже указателя мышки.
В режиме PIO передача данных выполняется с помощью процессорных команд ввода-вывода, а не непосредственно контроллером диска с использованием прямого доступа в память (без использования CPU). После принудительного включения режима UltraDMA в свойствах контроллера система вернулась к нормальной производительности с обработкой прерываний процессором на уровне 05-1.5%.
Подобное поведение системы, нередко, является следствием некорректно работающих драйверов или системных служб антивирусов, вирусов, брандмауэров и прочих недостаточно отлаженных или не универсальных программных продуктов.
Утилита от Microsoft Kernrate Viewer позволяет относительно просто определить степень использования процессора отдельными драйверами в процессе обработки прерываний
Поддерживаемые операционные системы: Windows 2000, Windows XP и Windows 2003 Server. Поддерживаемые процессоры: Intel x86 processors (Pentium и старше), эквивалентные им процессоры AMD, а также 64-битные процессоры от Intel и AMD.
После установки Kernrate, в папке \Program Files\krview\kernrates будут находиться исполняемые файлы
Kernrate_i386_Win2000.exe
Kernrate_i386_XP.exe
Kernrate_ia64_XP.exe
Для удобства использования в командной строке, можно один из модулей, соответствующий вашей операционной системе, перетащить в папку, которая присутствует в путях поиска исполняемых файлов ( например \Windows\system32) и присвоить ему более короткое имя (например kernrate.exe).
После запуска утилита выдает на экран сообщение:
При нажатии CTRL-C программа завершает работу, и на экран выводятся собранные данные профилирования системы, включающие суммарную статистику по использованию процессоров, физической и виртуальной памяти, а также счетчики использования модулей в режиме ядра. Вся информация, как правило, на экране не помещается, поэтому лучше использовать запуск Kernrate с перенаправлением вывода в текстовый файл:
В этом случае, после нажатия CTRL-C, результаты работы программы можно будет просматривать в файле C:\kernrate.log.
Пример содержимого файла журнала работы Kernrate:
Вначале присутствует общая информация о компьютере и самой Kernrate. Затем, собранные и обработанные данные об использовании ресурсов системы:
————Overall Summary:—————
P0 K 0:00:19.437 (25.4%) U 0:00:09.109 (11.9%) I 0:00:48.125 (62.8%) DPC 0:00:01.062 ( 1.4%) Interrupt 0:00:00.171 ( 0.2%) Interrupts= 52771, Interrupt Rate= 688/sec.
Далее в журнале выводится информация об использовании памяти и статистика операций ввода-вывода.
Результаты для режима ядра отображаются после строки :
Проценты в таблице базируются на количестве зафиксированных утилитой событий (Hits).
Информация данного раздела журнала дает относительно подробную картину использования ресурсов системы в режиме ядра.
Список модулей упорядочен по убыванию степени использования центрального процессора и позволяет легко определить имя модуля, являющегося причиной видимого замедления, кратковременного периодического подвисания или подтормаживания системы.
Утилита Kernrate имеет несколько десятков ключей командной строки, позволяющих выполнить более тонкое и точное профилирование и, например, получить данные по вызовам отдельных функций ядра конкретными процессами
После запуска RATTV3, в системном трее будет отображаться иконка программы, с помощью которой можно вызвать всплывающее меню, содержащее пункты:
CSWA создает файлы отчетов, которые содержат имя компьютера, дату, время и данные о компонентах, работающих в режиме ядра и вызвавших события обработки прерываний (ISRs и/или DPCs) в процессе мониторинга.
Программа очень проста в использовании и позволяет обнаружить сам факт повышенного потребления ресурсов обработкой отложенного вызова процедур (DPC)
Использование Process Explorer для поиска вредоносных программ.
Process Explorer позволяет довольно просто обнаружить симптомы наличия вредоносных программ по некоторым, нехарактерным для стандартного программного обеспечения, признакам.
— процесс выделен фиолетовым цветом, т.е. имеет упакованный загрузочный модуль. Обычно, упаковка образов используется для затруднения исследования приложения с помощью дизассемблеров. Это не бесспорный признак вредоносного программного обеспечения, но факт, который должен вызвать более пристальное внимание к процессу.
Для дальнейшего анализа процесса можно воспользоваться кнопкой панели инструментов Properties или вызовом свойств процесса с использованием контекстного меню.
Дополнительные признаки, которые могут принадлежать вредоносной программе:
Примеры использования утилиты Process Explorer для исследования различных проблем с функционированием системы можно найти в блоге Марка Руссиновича
Если вы желаете поделиться ссылкой на эту страницу в своей социальной сети, пользуйтесь кнопкой «Поделиться»