性能診斷
在老版本W(wǎng)indows中,我們用來監(jiān)視系統(tǒng)性能最常用的工具可能就是Windows任務(wù)管理器了。這個工具功能上算是夠用,不過默認的設(shè)置并不好,只能顯示有限的系統(tǒng)性能參數(shù),為了能夠滿足更高的要求,必須對其進行一些調(diào)整。在Windows Vista中,雖然任務(wù)管理器功能沒什么加強,不過我們已經(jīng)有更專業(yè)的工具來監(jiān)視系統(tǒng)性能了,這就是性能控制臺。
要使用該工具,我們只需要打開“開始”菜單,在搜索框(默認情況下Vista中并不顯示“運行”對話框,我們可以使用該框代替)中輸入“perfmon.exe”并回車,即可看到類似圖1的界面。這里最顯眼的就是四個實時更新的圖表,分別代表了CPU、物理硬盤、網(wǎng)絡(luò)和內(nèi)存分頁情況的使用狀態(tài)。同時窗口下方還列出了一些條狀按鈕,點擊后就可以看到上述四個性能參數(shù)的詳細內(nèi)容。下文中我們會詳細介紹這些內(nèi)容。
圖1
CPU
該欄目下列出了系統(tǒng)中當前運行的進程信息(圖2),和傳統(tǒng)的任務(wù)管理器類似,不過這里列出的項目只能查看,不能直接結(jié)束進程或者調(diào)整進程的優(yōu)先級,這些工作仍還需要通過Windows任務(wù)管理器進行。
該欄目下列出了5項不同的內(nèi)容,分別具有如下含義:
● Image(進程名稱):使用了CPU資源的程序進程名稱。
● PID:應(yīng)用程序?qū)嵗倪M程ID。小蟲網(wǎng)絡(luò)技術(shù)http://www.chinaccna.com
● Threads(線程):該程序?qū)嵗斍斑\行的線程數(shù)量。
● CPU:該程序?qū)嵗斍罢加玫腃PU時鐘。
● Average CPU(平均CPU占用):該程序?qū)嵗加肅PU總時鐘的百分率。
從這個欄目中我們主要可以看到每個程序?qū)PU資源的占用。例如,如果你總是感到系統(tǒng)運行速度太慢,那么就可以查看這里的內(nèi)容,看是否有程序占用了過多的CPU資源,并對其采取相應(yīng)的操作。
圖2
磁盤
該欄目下列出了系統(tǒng)中每個進程對硬盤的讀寫情況(圖3),這里一共顯示了6項不同的內(nèi)容,分別具有如下含義:
● Image(進程名稱):讀寫硬盤的程序進程名稱。
● PID:讀寫程序的進程ID。
● File(文件):正在被程序的進程讀寫的文件名稱。
● Read(讀取):以“字節(jié)/分鐘”為單位顯示文件正在被進程讀取的速度。
● Write(寫入):以“字節(jié)/分鐘”為單位顯示文件正在被進程寫入的速度。
● Total(總數(shù)):以“字節(jié)/分鐘”為單位顯示文件正在被進程讀寫的總速度。
如果你覺得自己沒做什么,但是硬盤的燈一直在閃,那么就可以利用該欄目看看到底是哪個進程在頻繁讀寫硬盤,并根據(jù)不同的進程采取不同操作。
圖3
網(wǎng)絡(luò)
該欄目下列出了系統(tǒng)中每個進程對網(wǎng)絡(luò)的訪問情況(圖4),這里一共顯示了6項不同的內(nèi)容,分別具有如下含義:
● Image(進程名稱):使用網(wǎng)絡(luò)資源的程序進程名稱。
● PID:使用網(wǎng)絡(luò)資源的程序進程ID。
● Address(地址):正在和本地計算機交換信息的網(wǎng)絡(luò)地址。如果目標計算機和本機位于局域網(wǎng)的同一子網(wǎng)中,這里將顯示對方的計算機名稱;否則將顯示對方計算機的IP地址或者FQDN(Fully Qualified Domain Name,完全合格的域名)。
● Send(發(fā)送):以“千比特/秒”為單位顯示應(yīng)用程序正在從本地計算機發(fā)出數(shù)據(jù)的速度。
● Receive(接收):以“千比特/秒”為單位顯示應(yīng)用程序正在從本地計算機接收數(shù)據(jù)的速度。
● Total(總數(shù)):以“千比特/秒”為單位顯示當前被應(yīng)用程序使用的網(wǎng)絡(luò)帶寬。
如果你覺得網(wǎng)絡(luò)活動異常,例如接收數(shù)據(jù)正常,但是有大量發(fā)出數(shù)據(jù)(很可能中了蠕蟲病毒了),那么就可以使用該欄目查看每個程序的網(wǎng)絡(luò)使用情況,并從中找到出有問題的進程,著手解決。
圖4
內(nèi)存
該欄目下列出了系統(tǒng)中每個進程的內(nèi)存使用情況(圖5),主要包括每秒鐘之內(nèi)發(fā)生的硬缺頁(hard fault)情況和物理內(nèi)存的使用百分率。這里一共顯示了4項不同的內(nèi)容,分別具有如下含義:
● Image(進程名稱):使用內(nèi)存資源的程序進程名稱。
● PID:使用內(nèi)存資源的程序進程ID。
● Hard Faults(硬缺頁):該應(yīng)用程序當前導致的硬缺頁數(shù)量。所謂硬缺頁,是指被程序使用的物理內(nèi)存內(nèi)容被分頁到硬盤上的分頁文件中,導致物理內(nèi)存中“缺少”該內(nèi)容的現(xiàn)象。
● Working Set(工作集):被應(yīng)用程序使用的頁面文件當前位于物理內(nèi)存中的數(shù)量(也可以理解為物理內(nèi)存的使用量)。
如果通過查看這里你發(fā)現(xiàn)某個程序的硬缺頁數(shù)值很高,那就需要注意了,很可能是程序本身有Bug,導致系統(tǒng)頻繁將頁面文件寫入硬盤,或者從硬盤中讀入內(nèi)存;但如果幾乎每個進程都有較高的硬缺頁數(shù)值,則可能是因為你的物理內(nèi)存數(shù)量太少,需要添加內(nèi)存。
圖5
性能監(jiān)視
上文中已經(jīng)介紹了一些常用的系統(tǒng)性能參數(shù),不過如果你需要對某一項目進行更細致的監(jiān)視,或者你需要了解更多上文中沒有列出的參數(shù),這里就可以使用Vista中的性能監(jiān)視功能了。
圖6
在圖1所示的性能控制臺左側(cè)樹形圖列表中點擊“Performance Monitor(性能監(jiān)視器)”節(jié)點,打開性能監(jiān)視器,你將看到類似圖6的內(nèi)容。這里已經(jīng)默認顯示了處理器的占用情況,我們可以點擊工具欄上的加號按鈕向其中添加計數(shù)器。需要注意的是,這里不僅能監(jiān)控本機的性能參數(shù),還可以監(jiān)控局域網(wǎng)中的其他計算機,而且可供監(jiān)視的參數(shù)種類也非常多(圖7)。如果你對某個對象的含義不了解,也可以點擊窗口下方的“Show description(顯示描述)”選項,查看每個對象的詳細含義。其實這個工具在老版本W(wǎng)indows中就有,不過Vista中對其界面進行了一些簡單改進,因此這里不再多說。
圖7
數(shù)據(jù)的收集和查看
對系統(tǒng)性能的監(jiān)視可以算是一項長期的工作,為了對系統(tǒng)的某些性能有一個徹底的了解,我們也許需要長時間進行監(jiān)視,以便能夠得到正常使用計算機情況下系統(tǒng)性能的改變。但這也帶來了一個問題:我們不能一直開著監(jiān)視器,并查看其中的內(nèi)容,我們還有其他更重要的工作要做。這時候我們就可以使用Vista提供的性能數(shù)據(jù)集功能,讓系統(tǒng)在后臺自動監(jiān)視性能數(shù)據(jù),而我們可以定期查看收集到的數(shù)據(jù),并根據(jù)數(shù)據(jù)對系統(tǒng)進行適當?shù)恼{(diào)整。
這整個過程包括設(shè)置性能數(shù)據(jù)集、收集數(shù)據(jù)以及分析數(shù)據(jù)三部分,我們會通過一個具體的實例向你介紹。假設(shè)我們需要監(jiān)控長時間內(nèi)系統(tǒng)對內(nèi)存的使用情況,那么可以這樣做:
設(shè)置性能數(shù)據(jù)集
首先在圖1所示的性能控制臺左側(cè)樹形圖列表中點擊“Data Collector Sets(數(shù)據(jù)收集)”節(jié)點,接著用鼠標右鍵點擊“User Defined(用戶自定義)”,從“New(新建)”菜單中選擇“Data Collector Set(數(shù)據(jù)收集)”,你將能看到一個向?qū)问降膶υ捒颍▓D8)。
圖8
在“Name(名稱)”框中為該數(shù)據(jù)集輸入一個名字,例如“內(nèi)存使用”,接著點擊“Create manually(手工創(chuàng)建)”,并點擊下一步。 接下來有兩個選項,我們可以分別創(chuàng)建data logs(數(shù)據(jù)日志)或者Performance Counter Alert(性能計數(shù)器警告)。數(shù)據(jù)日志的作用就是真實記錄所需信息,供我們?nèi)蘸蟛榭矗欢阅苡嫈?shù)器警告則是為了在系統(tǒng)遇到某些性能問題(例如系統(tǒng)盤可用硬盤空間小于1GB)的時候通過某種形式為我們發(fā)出警告,提醒我們注意。因此這里我們選擇“Create data logs(創(chuàng)建數(shù)據(jù)日志)”,并選擇“Performance counter(性能計數(shù)器)”,點擊下一步。 小蟲網(wǎng)絡(luò)技術(shù)http://www.chinaccna.com
隨后需要點擊“Add(添加)”按鈕加入性能計數(shù)器,因為操作方法和上文中添加計數(shù)器類似,這里就不再多說。同時我們還需要選擇收集數(shù)據(jù)的時間間隔,例如,如果我們要監(jiān)控未來一個月內(nèi)物理內(nèi)存的使用情況,那么比較好的辦法是設(shè)置以一分鐘為單位進行收集。你需要根據(jù)監(jiān)視的時間或者監(jiān)視對象的屬性設(shè)置適當?shù)臅r間間隔,如果設(shè)置不當,可能會產(chǎn)生大量沒用的性能日志記錄,這些記錄不僅占用大量硬盤空間,還會給日后的數(shù)據(jù)分析和查看增加困難。
接著還有一些選項,可以供我們設(shè)置保存性能日志的位置,以及指定運行該計數(shù)器的用戶憑據(jù)。全部設(shè)置好之后可以點擊“Finish”完成該向?qū)АkS后可以看到類似圖9的界面,在窗口左側(cè)的樹形圖中我們新建的項目圖標上有一個綠色的三角,表示該項目已經(jīng)成功運行,并在后臺監(jiān)視系統(tǒng)性能數(shù)據(jù)
圖9
查看分析數(shù)據(jù)日志
當監(jiān)視進行了一段時間之后,我們就可以通過“Performance Monitor(性能監(jiān)視器)”節(jié)點查看記錄的數(shù)據(jù)了。在圖6所示的界面上點擊顯示為一個圓柱體圖標的“View Log Data(查看日志數(shù)據(jù))”按鈕,打開圖10所示的“System Monitor Properties(系統(tǒng)監(jiān)視器屬性)”對話框,并打開“Source(來源)”選項卡。首先在“Data source(數(shù)據(jù)源)”選項下選擇“Log files(日志文件)”,接著在隨后出現(xiàn)的對話框中找到之前創(chuàng)建的性能數(shù)據(jù)集收集起來的數(shù)據(jù)文件,并點擊OK按鈕,監(jiān)控的數(shù)據(jù)就會以靜態(tài)的形式顯示在性能監(jiān)視器主窗口中。
圖10
系統(tǒng)經(jīng)過長時間的使用,隨著安裝和卸載的軟硬件數(shù)量的增多,穩(wěn)定性難免會有問題。我們都知道,系統(tǒng)自身的穩(wěn)定性現(xiàn)在已經(jīng)不是大問題,影響穩(wěn)定性最主要的因素就在于硬件設(shè)備的驅(qū)動程序,以及大量第三方應(yīng)用程序。那么能否讓系統(tǒng)將相關(guān)的信息記錄下來,供我們需要的時候進行分析?這里就要用到Vista中新增的一個功能:Reliability Monitor(可用性監(jiān)視器)。 需要注意的是,在使用該功能之前,系統(tǒng)累計的運行時間必須超過24小時,而且為了獲得最準確的數(shù)據(jù),必須讓該功能收集至少28天的數(shù)據(jù)。該功能最長可以保留一年時間內(nèi)的可用性記錄。
當我們需要分析系統(tǒng)可用性的時候,可以在圖1所示的性能控制臺中點擊“Reliability Monitor”節(jié)點,打開類似圖11所示的可用性監(jiān)視器。該監(jiān)視器的右上角顯示了一個日歷,只有監(jiān)視器記錄下來數(shù)據(jù)的日期才會顯示在該日歷上,而窗口中央的圖表則顯示了記錄的數(shù)據(jù)信息。例如3月1日的記錄上有三個黑點,這表示該日共有三種類型的錯誤被記錄下來。
圖11
可用性監(jiān)視器一共可以記錄5種不同類型的事件,分別如下:
● Software (Un)Installs(軟件安裝/卸載):對操作系統(tǒng)的安裝和卸載、Windows更新、硬件驅(qū)動的安裝,以及應(yīng)用程序的安裝和卸載進行記錄。
● Software(軟件):記錄被安裝或卸載的操作系統(tǒng)、應(yīng)用程序、Windows更新以及驅(qū)動程序的名稱。
● Version(版本):記錄被安裝或卸載的操作系統(tǒng)、應(yīng)用程序或者驅(qū)動程序的版本信息(這部分記錄不包含Windows的更新信息)。
● Activity(活動類型):指出該記錄屬于安裝或是卸載。
● Activity Status(活動狀態(tài)):指出該活動最終成功或者失敗。
● Date(日期):該活動的發(fā)生日期。
圖12
當我們點擊窗口下方的事件類別后,該類別下記錄的信息就會顯示出來(圖12),從中我們就可以知道系統(tǒng)在什么時間發(fā)生了什么事情,并根據(jù)不同的事情采取相應(yīng)的措施解決。