Process Explorer工具
1.Procexp概述
procexp的部分功能包括:
顯示進程父子關(guān)系的樹形圖視圖
代碼著色,用于區(qū)分進程的類型和狀態(tài)
工具提示:可顯示命令行信息以及與進程有關(guān)的其他信息
帶小數(shù)的CPU用量:用于顯示雖未徹底不活躍但只使用極少量CPU時間的進程
可查找哪些進程加載了某個dll
默認列:
Process(進程):該列顯示了可執(zhí)行文件的名稱,如果Procexp可以識別可執(zhí)行文件的完整路徑,還會顯示文件的圖標(biāo),列表的前三行代表“偽進程”
CPU:該列顯示了上一次刷新間隙時進程消耗的CPU時間百分率,四舍五入為包含兩位小數(shù)
Private Bytes:該列顯示了進程專用,不與其他進程共享的已分配和已提交字節(jié)數(shù)。每進程的專用字節(jié)數(shù)包含堆(Heap)和棧(Stack)內(nèi)存。該值持續(xù)增加通常意味著內(nèi)存泄漏
Working Set(工作集):該列顯示了內(nèi)存管理器為該進程分配的物理內(nèi)存數(shù)量
PID:進程ID
Description(描述)和Company Name(公司名):只有在Procexp能夠識別文件路徑并讀取文件時這兩列才會顯示內(nèi)容
竅門:在主窗口和下方窗格中,可以按下Ctrl+C將所選中的內(nèi)容以“制表符分隔的文本”像是復(fù)制到剪貼板?
進程樹:
process列始終會顯示在最左側(cè),該列包含三種排序模式:升序、降序、進程樹
默認情況下,當(dāng)一個進程創(chuàng)建另一個進程后,Windows會將創(chuàng)建進程的進程(父進程)的進程ID(PID)包含在新進程(子進程)的內(nèi)部數(shù)據(jù)結(jié)構(gòu)中
進程活動:
直接右鍵點擊,或選中后從【Process】菜單中選擇不同選項,隨后即可針對進程執(zhí)行各種操作
Windows(窗口)子菜單:如果進程在桌面上顯示了可見窗口,即可使用Windows子菜單將窗口置于前端、還原、最小化、最大化,或直接關(guān)閉。如果進程不包含可見窗口,Windows子菜單將不可用
Set Affinity(設(shè)置相關(guān)性):在多CPU系統(tǒng)中可以為進程設(shè)置處理器相關(guān)性,這樣就可以只使用我們指定的一個或多個CPU執(zhí)行該進程的線程。如果有失控的進程耗費了大量CPU,為了對其進行排錯必須繼續(xù)運行但希望對進程進行限制,此時可以使用 該功能。我們可以使用Set Affinity限制進程臨時只能在一個內(nèi)核中運行,這樣既可釋放其他CPU,確保系統(tǒng)依然可用。
Set Priority(設(shè)置優(yōu)先級):查看或設(shè)置進程的基本調(diào)度優(yōu)先級
Kill Process(終止進程 ):選擇【Kill Process】或單擊工具欄上的【Kill Process】按鈕可強制終止進程。默認情況下Procexp會在終止進程前要求用戶確認,但可在【Options】菜單下反選【Confirm Kill】(確認終止)禁止確認
警告:強制終止進程會使得進程沒有機會正確關(guān)閉,進而可能導(dǎo)致數(shù)據(jù)丟失或系統(tǒng)不穩(wěn)定。終止關(guān)鍵系統(tǒng)進程會導(dǎo)致Windows立刻出現(xiàn)藍屏死機崩潰
Kill Process Tree(終止進程樹):打開Procexp的進程樹排序模式后可以使用這個選項強制終止一個進程以及該進程的所有“后代”。如果啟用了【Confirm Kill】選項,還需要對該操作進行確認
Restart(重啟動):選擇該選項后,Procexp會終止選中的進程,并使用相同的命令行參數(shù)重新啟動相同映像
Suspend(掛起):如果希望讓進程贊數(shù)處于不活躍的狀態(tài),以便讓網(wǎng)絡(luò)、CPU或磁盤等系統(tǒng)資源可以被其他進程使用,此時可以掛起該進程的線程,若要恢復(fù)掛起的進程,可以從進程的上下文菜單選擇【Resume】(恢復(fù))。
Launch Depends(啟動依賴項):如果具備Dependency Walker(Depends.exe)工具,Procexp會使用所選進程的可執(zhí)行映像路徑作為命令行參數(shù)啟動該工具。Depends.exe會顯示DLL的依賴情況。
Create Dump(創(chuàng)建轉(zhuǎn)儲)子菜單:為所選進程創(chuàng)建小型或完整內(nèi)存轉(zhuǎn)儲,并將轉(zhuǎn)儲文件保存在自己選擇的位置
Properties(屬性):該選項可以打開所選進程的屬性對話框,其中顯示了有關(guān)該進程的大量細節(jié)信息。
定制可顯示的列:
右鍵點擊列頭行并選擇【Select Columns】(選擇列),或從【View】菜單中選擇【Select Columns】,即可選擇要顯示的列
保存顯示的數(shù)據(jù):單擊工具欄上的【Save】(保存)圖標(biāo)可將當(dāng)前進程活動的快照保存為文本文件。Procexp會保存主窗口中設(shè)置顯示的所有列中包含的數(shù)據(jù),如果打開了下方窗格,該窗格中的數(shù)據(jù)也會保存。數(shù)據(jù)會保存為制表符分隔的文本文件。如果在保存時尚未選中文件,Procexp會要求用戶選擇文件位置,并為文件使用與當(dāng)前所選進程相匹配的默認文件名。要更改文件位置,請從【File】(文件)菜單選擇【Save As】(另存為)
工具欄參考:
Procexp的工具欄包含可快速執(zhí)行常用功能的按鈕,
工具欄按鈕:
Save(保存):
Pefresh Now(立刻刷新)
System Information(系統(tǒng)信息)
Show Process Tree(顯示進程樹)
Show/Hide Lower Pane(toggle)(顯示/隱藏下方窗格(切換))
View DLLs/View Handles(toggle)(查看DLL/查看句柄(切換))
properties(屬性)
Kill Process/Close Handle(終止進程/關(guān)閉句柄)
Find Handle or DLL(查找句柄或DLL)
Find Window‘s Process(查找窗口的進程)
找出窗口對應(yīng)的進程
我們可以快速找出在桌面上顯示有可見窗口的進程。在工具欄上的十字準(zhǔn)星圖標(biāo)上單擊并保持,隨后拖拽至目標(biāo)窗口,這種方法可以幫助我們了解某些非預(yù)期錯誤的來源程序。
DLL和句柄
DLL視圖可列出所有動態(tài)鏈接庫和進程地址空間內(nèi)映射的其他文件,Handle(句柄)視圖可列出進程打開的所有內(nèi)核對象。按下Ctrl+D可打開DLL視圖,按下Ctrl+H可打開句柄視圖,按下Ctrl+L可打開或關(guān)閉下方窗格。
查找DLL和句柄
? ? ? ? ?Procexp最強大的功能之一是可以快速找出加載某個DLL或打開內(nèi)核對象的進程。例如:假設(shè)要刪除一個文件夾,由于該文件夾“被其他程序打開”,Windows不允許我們刪除,但Windows并不會告訴我們具體是哪個程序。此時按下Ctrl+F打開Search(搜索)對話框,輸入要查找的DLL或?qū)ο蟮耐暾虿糠置Q,隨后單繼【search】按鈕。Procexp會在自己可訪問的每個DLL路徑、句柄類型,以及句柄名稱中尋找包含所輸入字符的內(nèi)容,并列出搜索到結(jié)果所對應(yīng)的進程。單擊匹配項可在下方窗格將其選中,并在上方窗格中選中擁有該內(nèi)容的進程。雙擊可以選擇內(nèi)容并自動關(guān)閉Search對話框。
如果返回的搜索結(jié)果太多,可以單擊列頭按照該列內(nèi)容對結(jié)果進行排序。
DLL視圖
DLL視圖可顯示所選進程加載的所有DLL。System Idle Process和Interrupts偽進程,以及受保護進程的DLL視圖無法顯示任何內(nèi)容。Procexp需要具備管理權(quán)力才可以列出以不同用戶身份運行的進程加載的DLL,但此時無法列出System進程加載的映像。
DLL視圖的自定義
打開DLL視圖后,右鍵單擊下方窗格中的列頭并選擇【Select Columns】,隨后可打開Select Columns對話框的DLL選項卡。DLL選項卡列出了可選擇并顯示在Procexp DLL視圖中的所有DLL和映射文件的屬性。
進程詳情
Procexp主窗口中的進程列表可顯示有關(guān)系統(tǒng)中進程的大量信息。如果希望查看有關(guān)特定進程的進一步詳情,可以在Procexp主窗口中雙擊進程,打開其屬性對話框。Procexp會將屬性信息顯示在多個選項卡中:Image(映像)、Performance(性能)、Performance Graph(性能圖表)、Threads(線程)、TCP\IP、Security(安全)、Environment(環(huán)境)以及Strings(字符串)。如果使用管理權(quán)利運行,還可以顯示Disk(磁盤)和NetWork(網(wǎng)絡(luò))選項卡,如果計算機有一個或多個GPU,還將顯示GPU Graph(GPU圖形)選項卡。
Image選項卡
Image(映像選項卡),可顯示進程生命周期大部分情況下保持靜態(tài)的信息,包括從可執(zhí)行映像文件的圖標(biāo)和版本資源中收集的信息,映像文件的完整路徑,用于啟動該進程的命令行,其自動啟動位置,運行該進程使用的用戶賬戶,有關(guān)進程何時啟動的信息,以及x64版本W(wǎng)indows中該進程是32位或64位。
單擊【Kill Process】按鈕可強制終止該進程。默認情況下,當(dāng)我們終止進程之前Procexp會進行確認。如果需要禁止確認,可在【Options】菜單下反選【Confirm Kill】選項。
警告:強制終止進程會使得進程無法正確關(guān)閉,進而可能導(dǎo)致數(shù)據(jù)丟失或影響系統(tǒng)穩(wěn)定性。此外如果要終止的是類似Csrss.exe這種關(guān)鍵的系統(tǒng)進程,Procexp不會顯示額外的警告。終止關(guān)鍵系統(tǒng)進程會導(dǎo)致Windows立刻藍屏死機崩潰。
Performance選項卡
Performance(性能)選項卡,可顯示有關(guān)CPU用量、虛擬內(nèi)存、物理內(nèi)存(工作集)、I/O、內(nèi)核對象句柄數(shù)、窗口管理器句柄數(shù)等度量值。該選項卡下的所有數(shù)據(jù)會在Procexp刷新時同步更新。
Performance Graph選項卡
Performance Graph(性能圖形)選項卡針對每一個進程顯示了類似任務(wù)管理器的性能圖標(biāo)。最上方的圖標(biāo)顯示了最近的CPU用量歷史,其中紅色區(qū)域代表該進程內(nèi)核模式的用量,上方的綠色區(qū)域代表用戶模式的用量。注意,該圖標(biāo)并不能區(qū)分顯示不同CPU的用量。如果在雙核系統(tǒng)中進程使用了其中一個CPU100%的時間,但另一個CPU完全沒有使用,此時圖標(biāo)將顯示為50%的用量。
第二個圖標(biāo)顯示了進程已提交專用字節(jié)數(shù)的最近歷史。該圖標(biāo)數(shù)值持續(xù)增加可能意味著內(nèi)存泄漏
第三個圖表代表進程的文件和設(shè)置I/O吞吐量歷史記錄,其中淺藍色線條代表兩次刷新之間的I/O總流量,粉紅線條代表寫入操作的流量
用Procexp取代任務(wù)管理器
由于Procexp提供了比任務(wù)管理器更為豐富的信息,因此很多人可能會只使用Procexp而不再使用任務(wù)管理器。實際上Procexp提供了一種取代任務(wù)管理器的方法,通過【Options】菜單選擇【Replace Task Manager】(取代任務(wù)管理器)后,無論用什么方式啟動TaskMgr.exe,Windows都會轉(zhuǎn)為啟動Procexp。
通過Procexp啟動進程
在任務(wù)管理器中可通過【文件】-【運行】命令啟動新進程,Procexp也提供了【File】-【Run】命令,并在【File】菜單提供了使用提升或級后的權(quán)力運行新進程的多個選項:
(1)如果Procexp未以提升模式運行,那么Run As Administrator(以管理員身份運行)命令須先提升才能啟動新進程
(2)Run As Limited User(以受限用戶身份運行)命令可以更少的權(quán)利啟動新進程,運行新進程使用的令牌中將取消大部分特權(quán),其高級組將被標(biāo)記為Deny-Only(僅拒絕)如果Procexp具備管理權(quán)力,那么新進程的權(quán)利將大致等同于使用同一個用戶賬戶以標(biāo)準(zhǔn)用戶身份運行時所獲得的權(quán)利
其他功能:
關(guān)機選項
可以通過【File】-【Shutdown】子菜單注銷、關(guān)閉、鎖定或重啟動計算機。如果有系統(tǒng)支持,還會列出Hibernate(休眠)和Stand By(待機)的選項。
恢復(fù)Procexp的默認值
Procexp會將自己的所有配置信息存儲在“HKEY_CURRENT_USER\Software\Sysinternals\Process Explorer”注冊表鍵值下。因此將Procexp的配置恢復(fù)為默認值最簡單的方法是關(guān)閉Procexp,刪除該注冊表鍵,然后重新啟動Procexp
鍵盤快捷鍵參考:
| 按鍵組合 | 描述 |
| Ctrl+A | 將顯示的數(shù)據(jù)保存為新文件(文件-另存為) |
| Ctrl+C | 復(fù)制主窗口或底部窗格當(dāng)前行的內(nèi)容 |
| Ctrl+D | 顯示DLL視圖 |
| Ctrl+H | 顯示句柄視圖 |
| Ctrl+F | 查找句柄或DLL |
| Ctrl+I | 顯示系統(tǒng)信息對話框 |
| Ctrl+L | 顯示/隱藏底部窗格 |
| Ctrl+M | 在線搜索 |
| Ctrl+R | 啟動新進程(文件-運行) |
| Ctrl+S | 將顯示的數(shù)據(jù)保存為新文件(文件-另存為) |
| Ctrl+T | 以樹形圖形式顯示進程列表(查看-顯示進程樹) |
| Ctrl+1,Ctrl+2等 | 加載第一、第二個列集,以此類推 |
| 空格鍵 | 暫停/恢復(fù)自動更新 |
| Del | 終止所選進程 |
| Shift+Del | 終止進程樹-所選進程及其后代 |
| F1 | 顯示幫助 |
| F5 | 立刻刷新-更新所顯示的數(shù)據(jù) |
?
總結(jié)
以上是生活随笔為你收集整理的Process Explorer工具的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 设置centos6 yum源为光盘
- 下一篇: 任务管理器启动资源管理器