1.系統進程
這些大多是保證系統正常運行所需的進程。下面以筆者電腦上的進程列表為例(圖1)來做個簡單的介紹(默認情況下,WinXP會啟動許多的系統服務,由于筆者關閉了一些不必要的系統服務,所以列表可能與大家的略有不同)。
?、賁vchost.exe:它是從動態鏈接庫(DLL)中運行的服務的通用主機進程名稱。每個Svchost.exe包含著一組服務。我們平時上網、磁盤管理、執行的計劃任務等就是由這個進程來完成的。這就是典型的一個進程會對應多個程序。對于WinXP/2000系統會有多個此進程同時存在。木馬、病毒等也常常通過這個進程來加載,這樣它的進程名和程序名就不一樣了。
?、贓xplorer.exe:資源管理器,我們常用的桌面、任務欄等就是由它來管理的。
?、踂inlogon.exe:管理用戶登錄,是在登錄系統時加載的,作用就是保證用戶能夠正常登錄系統。
?、躍ystem和System Idle Process:系統默認服務,它作為單線程運行在每個處理器上,并在系統不處理其他線程的時候分派處理器的時間(別讓CPU太閑了)。大家常常會發現它的CPU占有率數值很大,其實這表明CPU此時很空閑。
其他如Alg.exe、sass.exe 、Services.exe 、Csrss.exe、Smss也是系統進程,大家一般接觸較少,具體說明就不介紹了。這些是系統正常運行所必需的進程,如果被關閉,系統可能會出現一些莫名其妙的故障。
2.用戶服務或自行啟動的進程
?、龠\行Norton殺毒軟件啟動進程—Navapsvc.exe和Navapw32.exe。
?、谌蝿諜谳斎敕ㄇ袚Q圖標—Ctfmon.exe,它是Office自動加載的文字服務,如果你沒裝Office,這里顯示的是internat.exe。
?、蹎観Q后的進程—QQ.exe、Timplatform(QQ的TM功能),這就是前面說的一個應用程序啟動多個進程。
?、躎askmgr.exe—正在運行的任務管理器。
其他如啟動Winamp(Winamp.exe)、Outlook Express(msin.exe)、Word(Winword.exe)、IE瀏覽器(iexplore.exe)、記事本(Notepad.exe)、EXCEL(Excel.exe)等程序后(括號中即為進程名),它們的進程名和程序本身是一致的,大家可以比較容易地判斷出來。
管理進程
雖然任務管理器可以列出系統所有的進程,但是無法知道進程所在的路徑、調用的模塊、進程的關系(如子、父進程)、包含子服務等詳細資料。下面介紹兩種方法。
1.利用系統自帶命令
在WinXP中,Tastlist和Taskkill就是專門用于查看和終止進程的兩個命令。
?、賂asklist命令,用于顯示運行在本地或遠程計算機上的所有任務的應用程序和服務列表,帶有過程ID。
語法:
tasklist[.exe] [/s computer] [/u domain\user [/p password]] [/fo {TABLE LIST CSV}] [/nh] [/fi FilterName [/fi FilterName2 [ ... ]]] [/m [ModuleName] /svc /v]
各參數的說明請參考Windows的幫助(在系統桌面上按“F1”鍵后搜索這個命令即可)。比如要查看QQ.exe這個進程調用的模塊,在命令行下輸入:
tasklist /m
回車后就可以看到當前所有程序所調用的DLL文件了,當然也包括QQ.exe(如圖2一個程序身后有很多模塊在支援)。
?、赥askkill命令,用于結束一個或多個任務或進程??梢愿鶕M程ID或圖像名來結束進程。
語法:
taskkill [/s Computer] [/u Domain\User [/p Password]]] [/fi FilterName] [/pid ProcessID] [/im ImageName] [/f][/t]
如要強行終止QQ.exe則輸入命令:taskkill /im qq.exe /f?;剀嚭蠹纯山Y束QQ進程。
2.利用專門進程軟件
Process Explorer(以下簡稱為PE)這個軟件已經有國內的愛好者對它進行了漢化,下面就以漢化版來介紹。雖然系統命令可以列出進程比較詳細的信息,但是無法知道進程包含每個服務的具體路徑,以及調用的DLL文件。來管理進程。PE可以讓使用者能了解到在后臺執行的處理程序,能顯示目前已經載入哪些模塊,分別正在被哪些程序使用著,還可顯示這些程序所調用的DLL進程,以及它們所打開的句柄。
下面就以用PE來查看Svchost.exe這個進程為例。如上所述,每個Svchost.exe包含著一組服務,而木馬們也非常喜歡它,常常通過注冊為系統服務并借助它來啟動。Svchost.exe進程只作為服務宿主,也就是說它只能提供條件,讓其他服務在這里被啟動,自己并不代表任何程序。這些系統服務是以動態鏈接庫(DLL)的形式實現,木馬們把可執行程序指向Svchost,由它調用木馬文件的動態鏈接庫來啟動服務。如果僅依靠系統自帶那兩個命令是無法解析這個進程的。
運行PE后選中Svhoost.exe,右擊選擇“屬性”,在彈出的窗口中就可以看到關于該進程的詳細信息(如圖3用工具查看進程就方便了)。