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