26 сентября 2013 в 13:57как я предполагаю, не из-за багов, а...
TRANSCRIPT
ProcessExplorervsProcessHackerМногимлюдямраноилипоздноприходитвголовумысль,чтостандартныйменеджерпроцессовWindowsвесьмаслабпофункционалу.Начинаютсяпоискиальтернативы,которыевосновномтутжеизаканчиваютсяприобнаруженииExplorerотМаркаРуссиновича.ВотиХабрдажесоветуетэтупрограмму.
Чтотутможносказать?Конечно,ProcessExplorer—этохорошаяпрограмма.Однако,неидеал.Именновпикуеёнеидеальностисуществуетнетолькобесплатная,ноисвободнаяальтернатива—ProcessHacker.Атеперьмыдетальноипопунктамрассмотрим,почемуProcessHackerнепросто«чуть-чутьлучше»,алучшенапорядок,лучшенастолько,чтопереводитпрограммудляпродвинутогопользователявклассинструментасистемногопрограммистаилиадминистратора.
Термины
РадисокращенияколичествбуквябудуназыватьProcessExplorer(отМаркаРуссиновича)—PE,аProcessHacker(откомьюнити)—PH.
Opensource
ЯнеяростныйфанатсвободногоПО:еслипроприетарнаяпрограммаделает,чтомненужно,асвободная—нет,топерваялучше.Однакоприпрочихравных(авданномслучаенехуже)свободноеПОдаётбольшепространствадляманёвра.PHвсемивытекающимипреимуществами,весьмаживымфорумомичастымирелизами.
Установка
Обепрограммыудобнеевсегоиспользоватьввидеportable-версий.PEтребуетпрочитатьисогласитьсяслицензией.PHпростозапускаетсяиработает.
Обновление
PEнеумеетпроверятьналичиеобновленийPHумеетпроверятьналичиеобновлений
Иконкивтрее
Естьуобеихпрограмм.По-дефолтуPEпоказываеттамтолькозагрузкуCPUвUserMode.По-дефолтуPHпоказываетзагрузкуCPUивUserModeивKernelMode.Остилецветовойсхемыможноспорить,ноличномнекрасныйцветначёрномфоне(уболеезаметен,чемсветло-зелёныйнабелом(уPE).
УPEможновключитьдо7иконоквтреесразнойполезнойинформациейУPHможновключитьдо8иконоквтреесразнойполезнойинформацией
Уведомлениеопроцессах\сервисах\драйверах
АбсолютнонезаменимаявещьвPH—уведомленияостарте\остановке\установкесервисовидрайверов.ПриразработкетакогоПОцикл«установить,запустить,проверить,остановить,
удалить»приходитсяделатьпо20разнадень—исPHсразувидишь,удачноидётделоилинет,нетнуждылезтьв«Службы»или«Диспетчерустройств»,нажиматьтам«Обновить»,ждатьизменений.
Контекстноеменюиконоквтрее
Обепрограммыпозволяютчерезконтекстноеменюиконкивтрееоткрыватьглавноеокно,перезагружать\выключатькомпьютер,открыватьокносистемнойинформации.Нопозволяетуправлятьвышеупомянутыминотификациямиидесяткомпроцессов(изтопазагрузкиCPU).
SystemInformation
ОкнаSystemInformationвобеихпрограммахоченьпохожиипофункционалуиподизайну.PEразбиваетинформациюповкладкам,PH—открываетвкладкипокликунадиаграммахвглавномокне.PHпоказываетчуть-чутьбольшеинформации(названиепроцессора,общийобъёмфизическойпамятиит.д.).
Главноеокно
Интерфейсыпрограммвыглядятдостаточносхоже:деревопроцессовитамитам.
Отметим,однако,нюансы.
Раскраска
1. Раскраскаестьвобоихпрограммах,ноесливPEонапостолбикам,товстрокам.ВитогевPHудобновзглядомпроследитьпогоризонталивседанныеодногопроцесса,авPE—повертикалииспользованиекакого-нибудьресурсаразнымипроцессами.
2. Настройкараскраскиестьитамитам,ноеслиPEнастраиваютсяцветадля8типовпроцессов,товPH—для16(плюснекоторыеопциитипадлительностиподсветкипроцесса).
Выборстолбиковсинформациейопроцессе
Примерноравноеколичествопараметровуобеихпрограмм.УPEгруппам,уPH—поалфавиту.Витогеесливызнаететочноеназваниепараметра—егобыстреенайтивPH,еслитолькокакойобластионкасается(память,диск,сеть)—быстреевPE.Крометогонадопризнать,чтоPEбольшезнаетовнутреннихпараметрах.NET-процессов(PHтожеидётвэтомнаправлении,естьспециальныйплагиндлясчётчиков.NET)
Фильтрпоименипроцесса
НетвPEЕстьвPH,поддерживаетключевыесловадляпоискаопределённыхтиповпроцессов
Диаграммыпроизводительностинатулбаре
ЕстьвPEНетвPHЭтототредкийслучай,когдачто-тоестьвPEинетвPH.Давайте,однако,посмотримкаконивыглядят:
Подписейнет,осейнет,прибегломвзгляденепонятноничего.Дляполучениязначимойинформациивсё-равнонужнооткрыватьокносистемнойинформации,авоттамужевпередипоинформативности.
«Runas...»
ВPHестьоченьнужныйпунктменю«Runas...».СтехпоркаквконтекстномменюпроводникаWindowsэтотпунктисчез,уступивместо«Runasadministrator»егооченьнехватало.ВPEэтогопунктанет.
Окно«FindHandlesorDLLs»
Обратитевнимание,вPEздесьестькнопки«Search»и«Cancel».Впотому,чтоPEможетискатьнуо-о-о-оченьдолгоииногдапоискправданадоотменять.ищетпростомгновенно.Емукнопка«Cancel»ненужна.
Поискокна
PEпозволяетнажавнакнопкусизображениеммишенинайтипроцесспоегоокну.PHпозволяетнайтинетолькопроцесс,ноипоток,отвечающийзаобработкусообщений
данномуокну.Крометогонайденноеокноможносразузакрытьоднойкнопкой.
СправедливостирадинадопризнатьчтоиконкауPEлучше(похожанасоответствующуюиконкувSpy++)
Возможностиконтекстногоменюпроцесса
Небудемостанавливатьсянаобщихвозможностях,взглянемтольконато,чтоестьв
нетвPE:ОткрытиеместахранениябинарникапоCtrl+Enter(вPEтожеесть,нона2кликадальше—вокнесвойствпроцесса)ОтправкаэкзешниканаVirustotalDetachfromdebugger—полезно,когдакпроцессуприцепленаVisualStudio,которая«подвисла»иеёхочетсяубитьбеззакрытияпроцессаИнформационныеокнапопроцессу:GDIHandles,Heaps,UnloadedModules,WSWatch,WindowsTerminator—возможностьубитьпроцесс17-юразнымиспособами.Интереснопонаблюдатьзакорректностьюзавершениясвоейпрограммы.InjectDLLs:крайнеполезнаяштукапритестированииинжектингавсякиххуков.Фактическипозволяетнаэтапетестированияобойтисьбезсобственногоинжектора,писатьтолькосамуинжектируемуюбиблиотеку.Дляпроверкитеорийиисследования—крайнеполезнаявещь.
Сервисыидрайвера
PEсчитает,чтоегоделотолькообычныепроцессыPHявляетсякрайнеудобныминструментомработыссервисамиидрайверами.
НаспециальнойвкладкеServicesглавногоокнаможнопросматриватьсписокпроцессовидрайверов,ихстатус,можноихостанавливать,запускать,удалять,просматриватьименятьихсвойства.
КрайнеполезныйинструментдлясистемногопрограммистаподWindows(особенносовместносвозможностьювключитьдляиконкивтреенотификацииобизменениивспискесервисов).АещевменюToolsможносоздатьновыйсервис.
Сетеваяидисковаяактивностьпроцессов
PEпозволяетпросмотретьпараметрысетевойидисковойактивностипроцесса,позволяетпосмотретьобщуюпроизводительностьдисковойисетевойподсистем.PHкромевышеуказанногоимеетвглавномокнедвекрайнеполезныевкладки«Network»и«Disk»,показывающиеобщуюсетевуюидисковуюактивностьпроцессов.Справедливостирадинужнопризнать,чтовсовременныхверсияхWindowsнечтоподобное(хотяинетакудобное)показываетштатныйинструментResourceMonitor.
Модульнаяархитектура
PEцельныйинеделимыйPHмодульный,поддерживаетплагины(изначительнаячастьописанногоздесьфункционалаименноплагинамииреализована).
Окноинформацииопроцессе
Группировкаинформацииповкладкамвпрограммамслегкаотличается,сравнивать«влоб»трудно.
Вцеломможносказать,чтообъёмпредоставляемойинформациииудобствопользованияпримерноодинаковы.Однакоестьархиважнаядеталь:PEвэтомокнеиногдаврёт.Причём,какяпредполагаю,неиз-забагов,апомаркетинговымпричинам(аужэтовообщеникуданегодится).Детальноэтотвопросяразбиралвотвэтомтопике,комуинтересно—можетеознакомиться.
ОкноинформацииоDLL
ОбепрограммыпозволяютпросмотретьсписокDLLвадресномпространствепроцесса.показываетихвнижнейчастиглавногоокна(привключениисоответствующейпанели),показываетихвовкладкевокнеинформацииопроцессе.Придвойномкликенабиблиотекеитамитамотображаетсяинформацияоней.
ИвотздесьмысновавидимпочемуPEявляетсяпростоприкладнойутилитойдляпродвинутогоюзера,аPH—инструментомпрограммиста.ЕслиPEобщуюинформациюобиблиотекеисписокстроквней,тоPHпоказываетполныйсписокимпортируемыхиэкспортируемыхфункций.Дляэтогобольшененужныотдельныедизассемблеры!
Минутказдоровойкритики
НебудемвпадатьвидолопоклонничествоипосмотримчтовPEлучше:настраиваетсяшрифт(чтополезно,посколькупо-умолчаниюонмельче,чемвестьнижняяпанель,гдемогутотображатьсяDLLкиилихэндлы,еслиинтересуеттолькоэтаинформация—вPEдонеёнаодинкликменьшеможносохранятьизагружатьнаборколоноксинформациейопроцессах,полезноприпериодическойработенадразнымитипамиПО.PHтожепозволяетэтоделать,нотолько
черезпараметрыкоманднойстроки,чтонетакудобновокнеинформацииопроцессеестьвкладкаStrings,позволяющаяпросмотретьиспользуемыевпроцессестроки.PHтожепозволяетполучитьэтуинформацию,нонестольнаглядно(блокипамятинавкладкеMemory)
Выводы
Каквыисамимоглизаметить,PH—этоттотслучайкогдавобщемитакнеплохуюпрограммувзялиисделалиещёлучше,ещёдружелюбнееиещёполезнее.НаправлениеразвитияPHзадавалосьсообществом,детскиебагибыстрофиксились,упорделалсянаполезностьинструментанетолькообычномупользователю,ноипрограммистуссисадмином.
Утилитаполезная,пользуйтесьназдоровье.