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

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

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

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

Добавлен: 29.10.2018

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

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

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

Process Explorer  

Глава 3  67 

Поиск процесса — владельца окна

С помощью Procexp можно быстро найти процесс, которому принадлежит 
любое окно на рабочем столе. Перетащите значок инструмента в виде пе-
рекрестья прицела с панели инструментов на интересующее вас окно. При 
этом окно Procexp может скрыться, а нужное окно будет подсвечено рамкой. 
Отпустите кнопку мыши — откроется окно Procexp с процессом, владеющим 
выбранным окном. Эта функция особенно удобна для поиска источника со-
общений об ошибках.

Строка состояния

В строке состояния отображаются значения ключевых параметров системы: 
загруженности ЦП, число процессов и использование памяти. Если авто-
матическое обновление Procexp отключено, в строке состояния выводится 
слово «Paused» («Приостановлено»).

Если щелкнуть строку состояния правой кнопкой и выбрать Select Status 

Bar Columns (Выбрать поля строки состояния), можно настроить отобра-
жаемые параметры (рис. 3-17). Доступны некоторые общесистемные пара-
метры и параметры отдельных процессов, работающих под одной учетной 
записью с Procexp. Команда Refresh Time (Время обновления) отображает 
время последнего обновления Procexp.

Рис. 3-17.  Вкладка Status Bar в окне Select Columns

Динамически подключаемые библиотеки 
и описатели

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

SIN_ch_03.indd   67

27.12.2011   14:14:25


background image

68  Часть 

II   

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

странство процесса, а в режиме просмотра описателей видны все объекты 
ядра, открытые процессом. Режим просмотра DLL (рис. 3-18) активируется 
нажатием Ctrl + D, а режим просмотра описателей — нажатием Ctrl+H; на-
жатия Ctrl+L открывают и закрывают нижнюю панель. Для изменения от-
носительных размеров панелей нужно перетащить разделитель панелей.

Рис. 3-18.  Нижняя панель Procexp в режиме просмотра DLL

Поиск DLL и описателей

К наиболее удобным функциям Procexp относится возможность быстрого 
поиска процессов, в которые загружена некоторая DLL или открыт опреде-
ленный объект. Это полезно, например, когда при попытке удалить какую-
нибудь папку Windows не дает сделать это, сообщая, что папка «открыта 
другой программой», но не называет эту программу.

Рис. 3-19.  Окно Search Process Explorer

Нажмите Ctrl + F, чтобы открыть окно Search (рис. 3-19), введите имя 

или часть имени DLL либо объекта, который вы хотите найти, а затем щел-

SIN_ch_03.indd   68

27.12.2011   14:14:25


background image

Process Explorer  

Глава 3  69 

кните кнопку Search. Procexp сверит введенное вами имя со списком DLL, 
типом и именем доступных описателей, а затем покажет список процессов 
и принадлежащих им DLL и объектов, соответствующих критерию поиска. 
Щелкните результат, чтобы открыть его на верхней и нижней панелях. При 
двойном щелчке результаты выделяются, а окно Search закрывается.

Если результатов найдено очень много, щелкните заголовок столбца, 

чтобы отсортировать его — так легче найти нужные объекты. Столбец Type 
(Тип) определяет, чем является найденный объект — DLL (точнее, проеци-
руемым файлом) или описателем объекта. Столбец Handle или DLL содер-
жит имя описателя или путь к DLL. Имя описателя может отсутствовать, 
если в меню View активен параметр Show Unnamed Handles And Mappings 
(Отображать безымянные описатели и проекции)
, а искомое имя совпада-
ет с типом описателя.

Режим просмотра DLL

Как ясно из его названия, в режиме просмотра DLL отображаются все DLL, 
загруженные выбранным процессом. В нем отображаются и другие проеци-
руемые файлы, в том числе файлы данных, а также файл исполняемого образа 
(EXE-файл). Применительно к процессу System, в режиме просмотра DLL 
отображаются образы, спроецированные в память ядра, в том числе, ntoskrnl.
exe и все загруженные драйверы устройств. Для процесса System Idle и псев-
допроцессов Interrupts в режиме просмотра DLL не отображается ничего.

Procexp требует прав администратора для просмотра DLL, загруженных 

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

Настройка режима просмотра DLL
Откройте режим просмотра DLL, щелкните правой кнопкой заголовок столб-
ца на нижней панели и выберите Select Columns — откроется окно Select 
Columns
 с вкладкой DLL (рис. 3-20). На этой вкладке можно выбрать атрибу-
ты DLL и проецируемых файлов, отображаемые в режиме просмотра DLL:

Рис. 3-20.  Вкладка DLL в окне Select Columns 

SIN_ch_03.indd   69

27.12.2011   14:14:26


background image

70  Часть 

II   

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

•  Description  Информация из внедренного в файла ресурса (если имеет-

ся).

•  Version  Информация о версии из внедренного в файла ресурса (если 

имеется).

•  Time Stamp  Время последнего изменения файла по данным файловой 

системы.

•  Name  Имя DLL или проецируемого файла либо — для безымянной 

проекции файла —строка <Pagefile Backed> (объект, сохраненных в стра-
ничном файле). Наведите указатель мыши на имя файла — откроется 
всплывающая подсказка, содержащая его полный путь.

•  Path  Полный путь к DLL или проецируемому файлу либо строка 

<Pagefile Backed> для безымянного проецируемого файла.

•  Company Name  Информация  из внедренного в файла ресурса (если 

имеется).

•  Verified Signer  Показывает, был ли образ исполняемого файла заверен 

цифровой подписью с сертификатом от корневого центра сертификации, 
доверяемого на этом компьютере (подробнее о подписании образов см. 
ниже).

•  Image Base Address  Базовый адрес. Для файлов, загруженных как ис-

полняемые образы, это адрес виртуальной памяти из заголовка испол-
няемого образа, который показывает, по какому адресу следует загрузить 
образ. Если этот адрес уже занят, образ загружается по другому адресу.

•  Base Address  Базовый адрес (адрес виртуальной памяти), по которому 

файл фактически загружен.

•  Mapped Size  Размер непрерывной области (в байтах), начиная с базо-

вого адреса, занятой проекцией файла.

•  Mapping Type  Тип проекции: «image» для исполняемых файлов-образов 

и «Data» для файлов данных, включая DLL, содержащие только ресур-
сы (например, значки и локализованный текст) и безымянные проекции 
файлов.

•  WS Total Bytes  Общий размер рабочего набора (байтов физической па-

мяти, занятой в настоящее время проекциями файлов).

•  WS Private Bytes  Объем физической памяти, занятой проецируемы-

ми файлами, и преданной данному процессу для монопольного (а не со-
вместного с другими процессами) использования.

•  WS Shareable Bytes  Объем физической памяти, занятой проецируе-

мыми файлами, для которой разрешено совместное с другими процесса-
ми использование.

•  WS Shared Bytes  Объем физической памяти, занятой файлами, спрое-

цированными в адресное пространство нескольких процессов.

•  Image Type (64 vs 32-bit)  (только в 64-разрядных версиях Windows) 

Тип образа, указанный в заголовке файла: 64- или 32-разрядный.

SIN_ch_03.indd   70

27.12.2011   14:14:26


background image

Process Explorer  

Глава 3  71 

•  ASLR Enabled  (только в Windows Vista и выше) В заголовке образа 

файла указано, что он поддерживает рандомизацию адресного простран-
ства. Если образ не поддерживает ASLR, то столбец остается пустым, для 
файлов данных отображается строка «n/a».
Хотя DLL, загруженные по адресу, отличному от заданного для них базо-

вого адреса, по умолчанию не подсвечиваются, их можно включить, выбрав 
пункт Relocated DLLs (Перемещенные DLL) в окне Configure Highlighting 
(см. выше). DLL, которые не удается загрузить по стандартному для них ба-
зовому адресу из-за того, что эта область уже занята (туда спроецированы 
другие файлы), загрузчик перемещает в другие области памяти. Этот про-
цесс дополнительно загружает ЦП, к тому же совместное использование 
перемещенных DLL становится невозможным, что снижает эффективность 
управления памятью Windows.

Если в меню View выбран пункт Show Unnamed Handles And Mappings

то в режиме просмотра DLL отображаются и безымянные проекции фай-
лов, помеченные в столбцах Name и Path (если те не скрыты) как <Pagefile 
Backed>. Для безымянных проекций многие поля, в том числе отображаемые 
по умолчанию, не содержат полезной информации. Сведения о безымянных 
проекциях содержатся в столбцах Base addressMapped size и Working set 
metrics
.

В режиме просмотра DLL меню DLL содержит следующие пункты для 

именованных файлов:
•  Properties  Открывает окно Properties для выбранного файла. Подроб-

нее об этом — следующем разделе.

•  Search Online  Procexp запускает поиск в Интернете по имени выбран-

ного файла, используя браузер и поисковую систему по умолчанию. Это 
удобно при поиске вредоносного ПО или идентификации неизвестной 
DLL.

•  Launch Depends  Если установлена утилита Dependency Walker (De-

pends.exe, о ней см. выше), Procexp запускает ее, передавая путь к вы-
бранному файлу как аргумент командной строки. Depends. exe показы-
вает DLL, зависимые от данной библиотеки, и DLL, которые зависят от 
нее.

Анализ DLL
Дважды щелкните именованный элемент в режиме просмотра DLL, чтобы 
отобразить для него окно Properties (рис. 3-21). Вкладка Image отображает 
о проецируемом файле следующую информацию: описание, название ком-
пании, версию, путь, базовый адрес и размер в памяти процесса, а также (в 
64-системах) тип (32- или 64-разрядный). Можно выделить эти поля и ско-
пировать в буфер обмена их содержимое.

SIN_ch_03.indd   71

27.12.2011   14:14:26