操作系統應用基礎 Windows XP服務詳解
微軟的個人操作系統從Win98發展到WinXP,為什么突然變得那么消耗系統資源呢?以至于很多人都感覺WinXP只是高配置的電腦才能運行的操作系統,其實不然。WinXP的變化主要源于其摒棄了以前家用操作系統的內核,除了漂亮的界面消耗了大量的內存和顯存等系統資源外,和Win2000一樣,WinXP默認在后臺還運行了很多不同的服務,像打印機服務、系統自動更新服務等,對系統的資源也占用不少。而這些服務中有相當一部分對個人用戶來說可能永遠都不會用到,反而在安全方面造成了很大隱患。所以根據自己的情況,適當禁用自己不需要的系統服務不僅可以節省系統資源,加快系統運行速度,還能起到安全保護的作用,是非常有必要的。在本刊15期的《讓你的電腦跑得更快》一文中,曾提供了一張如何管理配置WinXP的系統服務建議表。不過對于讀者來說關閉這些服務意味著什么始終是一頭霧水,影響了文章的可應用性,因此下面對這些服務作一個更具體詳細的研究。預備篇:如何管理配置系統服務
要想正確管理和配置系統服務,一定先確保你有合適的權限,否則一些設置你無法改動。因此最方便的方法就是使用Administrator組的用戶登錄。而在改動服務的設置之前,備份當前的狀態很有必要,一旦出錯可馬上恢復到正常狀態。這里介紹直接備份注冊表中與服務有關內容的方法,選擇“開始→運行”,輸入“regedit”并回車打開注冊表編輯器,展開注冊表選定“HKEY_LOCAL_MacHINESYSTEMCurrentControlSetService”,點擊菜單“文件”→“導出”將此分支下的注冊表內容導出并保存成一個REG文件,如果要恢復系統服務到原始狀態,只要雙擊這個文件導入注冊表即可。如已備份了服務的缺省設置,現在就可嘗試著更改服務了。熟練運用Win98的朋友都知道,“msconfig”是配置Win98啟動時系統資源占用的重要工具。在WinXP中,考慮到用戶對以前系列操作系統的習慣性,這個在Win2000中消失的工具又被保留了下來,所以不少從Win98升級到WinXP的朋友依然習慣性地使用它來配置系統。然而對于系統服務的管理配置來說這是不可取的。利用“msconfig”確實可以方便地關閉和啟動系統的后臺服務,但在其中只能機械地決定啟動還是關閉服務,并不能設定系統服務完整的3種啟動類型。更重要的是,由于在“msconfig”中看不到系統服務的基本注釋,在這種情況下容易造成配置管理服務的失誤。尤其有一些系統引導啟動所必須的基本服務,如Remote Procedure Call,使用專門的服務管理配置工具Services.msc是無法關閉的,反而是用“msconfig”可以將其關閉,所以極易造成無法啟動系統的失誤。因此還是使用WinXP附帶的服務配置管理工具Services.msc來管理服務較好。打開服務配置管理工具的方法是依次打開“開始→控制面板→性能維護”,然后選擇打開“管理工具→服務”,或者直接在“開始→運行”中輸入Services.msc然后回車。在服務配置工具的窗口,雙擊任意一個服務,就可以打開該服務的屬性面板。在這里做調整管理,通過更改服務的啟動類型來依據自己的需要啟動、關閉或干脆禁用服務。不過在配置這些服務之前,我們還是先了解一下服務的屬性面板中一些重要信息的含義。切換到具體服務的屬性面板的“常規”頁面,“服務名稱”是指服務的“簡稱”,并且也是在注冊表中顯示的名稱,“顯示名稱”是指在服務配置面板中每項服務的顯示名稱,“描述”則為此服務的簡單解釋,“可執行文件路徑”就更好理解了。接下來就是比較重要的“啟動類型”了,這也是整個服務配置管理的核心。對于任意一個服務,通常都有3種不同的啟動類型:Automatic(自動),Manual(手動)和Disabled(禁止),只要從下拉菜單中選擇就可以隨意更改服務的啟動類型。這3種啟動類型都有各自的意義和作用。Automatic(自動):此服務隨啟動WinXP一起啟動,將延長啟動所需要的時間,有些服務是必須設置為自動的,例如Remote Procedure Call(RPC)。由于依存關系或其性質的影響,其他的一些服務也必須設置為自動,這樣的服務最好不要去碰它,否則系統無法正常工作。Manual(手動):如果一個服務被設置為手動,那么可以在需要的時候再運行它。大多數服務都是這樣的,這可以節省大量系統資源、加快啟動時間。Disabled(禁止):此服務不能再運行,哪怕是系統必須。這個設置一般在提高安全性的時候很管用。如果懷疑一個陌生的服務會給你的系統帶來安全隱患,那么可以先嘗試停止它,看看系統還能不能正常運行,如果一切正常,那么就可直接禁止它了。日后如果需要這個服務,再啟動它前,必須先將啟動類型設置為自動或手動。最后是“服務狀態”,即指服務的現在狀態是啟動還是關閉,通常可利用下面的“啟動”、“關閉”、“暫停”等按鈕來即時改變服務的狀態,但是有兩種情況下這些按鈕是灰色不可用的。一種情況是服務被設置為Disabled,這種情況下只有將服務為設置自動或手動并“應用”后才可使用。另一種情況就是我們前面提到的系統啟動所必須的基礎服務,如Remote Procedure Call,它的啟動類型被設置為自動且不可改變,自然那些改變服務狀態的按鈕也就不可用了。切換到服務屬性面板的“依存關系”頁面。一些服務并不能單獨運行,必須依靠(即依存)其他服務。在停止或者禁用一個服務之前,一定要看清楚這個服務的依存關系,如果有其他需要啟動的服務是依靠這個服務,就不能將其停止。比如圖中Messenger這個服務,要依靠其他4個服務才能運行,因此停止或禁用其中的任何一個,Messenger服務都將不能正常運行。又比如Application Layer Gateway Service這個服務,如果關掉它,那么依賴它的Internet Connection Firewall/Internet Connection Sharing也就無法工作了。所以我們在關掉一個服務前,查清其依存關系是必不可少的步驟。
