實現(xiàn)Windows Vista快速關(guān)機

  微軟的任何操作系統(tǒng)都有這個問題,關(guān)機的時候,只聽到硬盤狂想,不知道在忙什么,關(guān)機速度超慢。即時到了現(xiàn)在最新版的Windows Vista系統(tǒng),這個問題也能解決的了。

  這主要和Windows 系統(tǒng)自身的機制有關(guān):Windows在發(fā)出關(guān)機指令后,需要首先通知已加載有服務(wù)、應(yīng)用程序和進程等,待其逐一關(guān)閉后才能進行系統(tǒng)關(guān)機或重啟的任務(wù),此外,關(guān)機前要進行的操作還包括如清理頁面文件等,需要對頁面文件中的每個頁面執(zhí)行物理寫入操作,從理論上講,這些過程是不可省略的,不然將影響系統(tǒng)的穩(wěn)定性。

  因此,對用戶而言,要加快Windows Vista的關(guān)機速度,在保證系統(tǒng)穩(wěn)定性前提下可做的優(yōu)化不是跳過類似的服務(wù)、應(yīng)用程序或進程的關(guān)閉,而是通過盡量縮短關(guān)閉前的等待時間。那么,在Windows Vista中,應(yīng)如何操作呢?

  同之前的Windows系統(tǒng)一樣,我們可以通過修改注冊表調(diào)整相應(yīng)選項來實現(xiàn)。

  縮短關(guān)閉服務(wù)前的等待時間

  上面我們提到過,在Windows Vista的關(guān)機流程中,系統(tǒng)首先向已加載的服務(wù)發(fā)出關(guān)閉警告,然后等待這些服務(wù)自動關(guān)閉后給出的關(guān)閉信號,如果在設(shè)定的等待時間期限后仍未收到關(guān)閉信號,Windows系統(tǒng)將相應(yīng)的服務(wù)實施強行中止關(guān)閉。

  要加快Windows Vista的關(guān)機速度,首先可以通過縮短系統(tǒng)默認(rèn)的關(guān)閉服務(wù)等待時間來實現(xiàn)。打開注冊表編輯器,找到如下注冊表項:

  HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control

  在右面板中,可以看到一個名為“WaitToKillServiceTimeout”的注冊表項,雙擊以修改它,將它的數(shù)值從默認(rèn)的20000(單位為毫秒)調(diào)整到一個較小的數(shù)值,如5000 甚至1000等,這樣,如果Windows Vista在設(shè)置的5秒(5000)或1秒(1000)內(nèi)沒有收到服務(wù)關(guān)閉信號,系統(tǒng)即會彈出一個警告窗口,通知用戶該服務(wù)無法中止,并給出強制中止服務(wù)或繼續(xù)等待的選項等待用戶選擇。

  縮短關(guān)閉應(yīng)用程序與進程前的等待時間

  與關(guān)閉服務(wù)前的等待時間類似,Windows Vista在強行關(guān)閉應(yīng)用程序與進程前同樣有一段等待該程序或進程自行關(guān)閉的時間,只有超過該時限后,Windows 系統(tǒng)才會將其強行中止。

  因此,縮短默認(rèn)關(guān)閉應(yīng)用程序或進行等待時間,同樣能夠加快Windows Vista的關(guān)機速度。

  設(shè)置方法同上面類似,在注冊表中找到如下分支:

  HKEY_CURRENT_USER\Control Panel\Desktop

  雙擊右側(cè)面板中的 “WaitToKillAppTimeout” ,將其值從默認(rèn)的 20000(單位同樣為毫秒)修改為較小的5000或1000,這樣,Windows在發(fā)出關(guān)機指令后如果等待5秒或1秒仍未收到某個應(yīng)用程序或進行的關(guān)閉信號,將彈出相應(yīng)的警告信號,并詢問用戶是否強行中止。

  在右側(cè)面板中還有一個名為 “HungAppTimeout” 的注冊表項,該項對應(yīng)于系統(tǒng)在用戶強行關(guān)閉某個進程或應(yīng)用程序后,如果該對象沒有響應(yīng)時的等待時間。其默認(rèn)值為“5000”,一般可將其修改為“1000”。

  然后,在如下的注冊表分支:

  HKEY_USERS\.DEFAULT\Control Panel\Desktop\

  重復(fù)上面的操作,即修改“WaitToKillAppTimeout”與 “HungAppTimeout” 兩個注冊表項的值。

  在關(guān)機或注銷時自動中止應(yīng)用程序或進程

  不過,即便我們將 “HungAppTimeout”的值設(shè)得很小,并不意味著Windows Vista在等待時間超過該時限后便會自動中止該程序或進程,而仍會彈出對話框讓用戶確認(rèn)是否中止。如果您感覺這樣的方式過于繁瑣,可通過修改注冊表項讓W(xué)indows Vista在超過等待時限后自動強行中斷該進程的運行。

  找到如下的注冊表分支:

  HKEY_CURRENT_USER\Control Panel\Desktop registry

  可看到項中有一名為“AutoEndTasks”的注冊表項,其默認(rèn)值為“0”,將其修改為“1”即是讓W(xué)indows Vista自動終止所有的進程,而不再需用戶的確認(rèn)。

  以保證系統(tǒng)的穩(wěn)定性為前提

  盡管上面的方法在某些情況下可以明顯加快Windows Vista的關(guān)機速度。不過,需要強調(diào)的是,無論“WaitToKillServiceTimeout”、“WaitToKillAppTimeout”還是“HungAppTimeout”,對Windows 系統(tǒng)而言都是相當(dāng)重要且不可缺少的參數(shù),設(shè)置不當(dāng)將影響系統(tǒng)的穩(wěn)定性或遺失用戶重要數(shù)據(jù)的后果。

  以“WaitToKillServiceTimeout”為例,Windows 系統(tǒng)使用WaitToKillServiceTimeout的目的是為了給相應(yīng)服務(wù)一段緩沖時間,讓這些執(zhí)行中的服務(wù)能夠?qū)⒕彺嬷械臄?shù)據(jù)在系統(tǒng)關(guān)閉前寫回去,如果沒有保留足夠的緩沖時間,數(shù)據(jù)便可能丟失而造成無法預(yù)知的后果,因此,一般不要將其時長設(shè)置得過短,至于將其設(shè)為“0”則更是不恰當(dāng)?shù)摹?/FONT>

  這些修改方法同樣適用于Windows 2000、 Windows XP與 Windows 2003。