隨著Win8正式發布腳步聲的臨近,用戶對Windows8的關注已經滲入到了方方面面,其中Win8開關機之快已經被用戶所認可的現實,甚至在配置豪華的電腦上更是實現8秒完成Win8開機。微博和論壇也盡是展示Win8開關機速度的相關討論,您如果不親身試一下,確實很難體會到Window 8的開機之飛速。
我們在較早前的一些文章中,已經對Win8的開機速度做過相關的測試。Win8開機真相究竟何在?我們再來刨根問底,並且帶著這些疑問,來深究一下Win8開機速度能做到如此境界的根層因素。全面解析Win8開關機背後的各項技術。
假關機or真休眠? Win8開關機刨根問底
本文將分析點評三個問題
何為“混合啟動”?Win8在整合既有的啟動模式和新增的快速休眠、喚起特性,減少內存暫存的數據寫入,大幅縮短開機時硬盤讀取與初始化的時間。通過這樣的方式來實現Win8的快速啟動。詳細內容我們將在下文內容中逐一分析;
休眠對Win8起到哪些作用?Win8從休眠模式到開機,啟動的過程省掉了大量系統所必要的數據讀取;
何時需要關機何時可休眠?其實這是一個非常直接的問題,在Win8系統以前,用戶對關機和休眠的選擇都是非常准確的,也賦予了明確的定位。那麼現在Win8推出之後,休眠和關機似乎顯得模糊化了。何時需關機何時要休眠,後文筆者將具體說明。
何為“混合啟動”?
Win8混合啟動,即是Win8在整合既有的啟動模式和新增的快速休眠、喚起特性後,讓操作系統轉為一種類似休眠的狀態,同時減少內存暫存的數據寫入,大幅縮短開機時硬盤讀取與初始化的時間。
混合啟動的基本原理
僅僅休眠系統核心文件,並可以大大增加系統啟動速度,混合啟動和休眠有什麼不同呢?
其實沒那麼簡單!混合啟動更快,而且保存數據更完美。大家知道,如果直接恢復到用戶桌面那會出現個人隱私保護的問題。不過微軟應該能夠處理好這方面的事情,應該會在喚醒後自動先切換到鎖定登陸狀態。不過談及到真正的開機和恢復速度,配合上新一代的SSD硬盤應該是首選,這正如蘋果設備中的存儲技術是一個道理。
台式機與筆記本用戶對電腦關閉方式的選擇
數據顯示,57%的台式計算機用戶和45%的筆記本電腦用戶會選擇關閉他們的計算機,而不是讓計算機進入睡眠模式。
Win8關機選項
“控制面板→所有控制面板項→電源選項→系統設置”進入到Win相關選項內,Win8將一些本該關閉的內核對話全部保存到一個名為hiberfil.sys的磁盤文件中,下次開機時直接將這裡的內容寫回內存,從而提高系統啟動速度。而這一點與當年的“混合關機Hiber Shutdown”異曲同工。
微軟在Windows8中把混合啟動這個功能用來替代關機功能,當您要關機的時候,Hybrid Boot實際上是在利用高級休眠功能,這樣計算機的重啟速度就會得到大幅提升。當然,您是可以在開始菜單中選擇的。
Win8關機按鈕
這點實際上對平板設備和智能手機設備來說,是必須的。在之前的開發版本裡面,Win8默認是采用混合啟動技術的,在開始菜單的最下面點下就行,當然這個混合啟動也是可以直接禁止掉的,早控制面板下的電源選項中找到並禁用它即可。
減少內存暫存/數據寫入
任何一個操作系統都需要依托於硬盤存儲器之上,Windows 8當然也不會例外。Windows開關機的速度似乎跟硬盤、休眠有千絲萬縷的關系。那麼,這裡面究竟是一種怎樣的秘密?
Windows 8的系統轉為一種類似休眠的狀態,同時減少硬盤緩存調用數據、內存暫存的數據寫入,大幅縮短開機時硬盤讀取與初始化的時間。於是可分為硬盤緩存和休眠兩個部分來進行分析。
硬盤緩存
原始意義是指存取速度比一般隨機存取記憶體RAM來得快的一種RAM,一般而言它不像系統主記憶體那樣使用DRAM技術,而使用昂貴但較快速的SRAM技術,也有快取記憶體的名稱。在計算機存儲系統的層次結構中,介於中央處理器和主存儲器之間的高速小容量存儲器。
高速緩沖存儲器對數據的運作原理
高速小容量存儲器和主存儲器一起構成一級的存儲器。高速緩沖存儲器和主存儲器之間信息的調度和傳送是由硬件自動進行的。某些機器甚至有二級三級緩存,每級緩存比前一級緩存速度慢且容量大。而這時,一開始的高速小容量存儲器就被人稱為一級緩存。就這樣硬盤緩存在Windows 8系統啟動時無需過多地進行調用,因為Win8的內核會話還沒有真正斷開。
內存緩沖
操作系統在從關閉狀態或者是休眠狀態下,啟動或者是恢復過來時,都需要調用讀取電腦的硬軟件資源,才能順利啟動。
各啟動進程之間的占用對比
休眠文件的默認大小為物理RAM的75%。該文件實質上是用於保存休眠數據,會在系統進入休眠的同時寫入。通常實際使用的空間要小很多,對於快速啟動,使用的空間通常為物理RAM的大約10%-15%,但會根據具體的驅動器、服務或其他因素而有所不同。
系統處理休眠文件的方式也與處理磁盤上其他文件的方式略有不同,例如卷快照服務會忽略該文件。從提升的命令行提示符運行 powercfg/hibernate off來禁用休眠並回收此空間。但需要注意的是,如果選擇這樣做則將徹底禁用休眠,包括一些非常實用的功能,例如快速啟動和混合睡眠,混合睡眠功能允許桌面系統同時進入睡眠和休眠狀態,這樣可以保證電源中斷的情況下,系統可以從休眠狀態中恢復。
使用進階的休眠功能來替代關機功能
休眠是將當前處於運行狀態的數據保存在硬盤中,在休眠時可以完全斷開電腦的電源,自動關閉顯示器和硬盤的時間設置為多長時間比較合適應看你需要了。
什麼是休眠,為什麼需要休眠?
休眠,在廣義上包括掛起到內存(STR待機)和掛起到硬盤(稱STD)兩種,而我們通常所指的休眠其實是STD。當電腦進入休眠狀態時,電腦首先將內存中的狀態復制到硬盤,然後關閉電源。此時電腦幾乎和通常關機一樣“安靜”,你完全可以切斷電源,因為保存到硬盤裡面的數據不會由於斷電而丟失
說明Windows7休眠
另外,盡管電腦硬件運行速度越來越快,但操作系統的體積也在不斷膨脹,使得電腦開、關機時,啟動、關閉的程序越來越多,花費時間也越來越漫長。因此如何讓電腦能夠快速啟動、一開機就進入Windows,就成為用戶關心的問題。
以休眠的方式來恢復系統,想必是啟動電腦的所有方式裡最高效的一個,所以結合電腦軟件硬件互相之間的相輔相成關系,使用休眠既可以保證在休眠過程中的低功耗性,也可以確保Windows系統的快速啟動。
何時才需要徹底關機?
Windows 8休眠按鈕
與待機相比,休眠是不能通過外部設備來喚醒的,它和正常開機一樣啟動電腦。不過和開機相比,休眠後啟動電腦無需一個一個進程地來啟動,只須要將硬盤中的內存鏡像讀取到內存中即可。隨著硬件和軟件的升級,操作系統開始引入了高級電源管理,其作用就是在電腦閒置時關閉部分設備,將電腦進入等待休息狀態,這樣當需要重新使用電腦時,能夠直接從等待休息狀態盡快恢復到原先的工作狀態,起到類似於快速啟動的效果。同時不用電腦時還能節省不少電能。
當然,偶爾您還是需要執行徹底關機,例如,當您打開系統以添加或更換某些硬件的時候。或者有的朋友覺得電腦在是用來了一段很長的時間之後,感覺電腦系統特別慢了,他們就會將系統重啟一下。這種方法很有效,但是這個問題也許在Win8系統下,可能需要考慮的就不會太必要了。
你選擇關機還是休眠?
人們傾向於關機是由於他們希望PC徹底“關閉”,不再消耗任何電量,以便延長電池使用時間或降低能源消耗。休眠也是一個不錯的選擇,在這種模式下也不會消耗電量,因此獲得了很多人的青睐。
但是,這種模式顯然並不是適合所有人,因為我們聽說許多人希望啟動計算機後迎來一個“全新的開始”,而不是繼續運行上一次會話中的全部事務。
Windows8關機快捷方式制作
在當今的PC上,睡眠/恢復是快速開/關轉換的最佳選擇,但在這種模式下仍會消耗少量電量以便保存RAM中的內容,雖然在經過良好優化的系統上只會消耗極少電量,但同樣有可能耗盡電池電量。回顧一下我們目前使用手機的方式,您會發現我們很少會將其重新啟動,並且始終會讓手機處於類似睡眠的狀態。其實這就是在傳統的PC平台向手機等移動設備的待機方式,轉變思維的一種必要形式。
睡眠/休眠的注意事項
通常,實際使用的空間要小很多,對於快速啟動,使用的空間通常為物理RAM的大約10%-15%,但會根據具體的驅動器、服務或其他因素而有所不同。系統處理休眠文件的方式也與處理磁盤上其他文件的方式略有不同,例如,卷快照服務會忽略該文件(略微提升性能)。
從提升的命令行提示符運行powercfg /hibernate off來禁用休眠並回收此空間。但是請注意,如果您選擇這樣做,則將徹底禁用休眠(包括一些非常實用的功能,例如,快速啟動和混合睡眠),混合睡眠功能允許桌面系統同時進入睡眠和休眠狀態,這樣如果出現電源中斷的情況,您仍可從休眠狀態中恢復。
通常來說,除非系統的磁盤空間極為有限,否則建議您保留默認值。這一全新的快速啟動模式可使幾乎所有系統受益,無論其安裝的是旋轉式硬盤驅動器(HDD)還是固態驅動器(SSD)都是如此,但對於安裝高速SSD的新一代系統效果尤為明顯。
Windows睡眠/休眠的優劣勢特點,剛剛我們已經幾乎都談到了,那麼對於那麼多條件和限定,您會選擇休眠,還是選擇關機?
刨根問底 驗明真相--新休眠睡眠機制
經過前面詳細的開關機原理分析討論,我們基本上能得到結論。其實Windows 8開關機速度之快的奧秘,就在於關機直接的說就是關機的徹底程度,Windows8關機采用的是深度休眠模式。
那麼傳統的操作系統所采用的徹底關機是什麼模式?先來了解過程,然後我們再來總結Windows8開關機飛速的最終奧妙。
傳統操作系統啟動過程:按下電源按鈕後,PC的固件啟動開機自檢(POST)並加載固件設置。檢測到有效的系統磁盤後,預啟動過程結束;
Win7關機過程
傳統操作系統關機過程:用戶從“開始”菜單選擇“關機”或按下電源按鈕啟動關機過程;或者應用程序通過調用ExitWindowsEx或InitiateShutdown等API啟動關機過程。
揭開Windows 8快速開關機的奧妙
內核會話將不再被關閉
與Windows 7中一樣,Windows 8會關閉用戶會話,但不再關閉內核會話,而是將其休眠。完全休眠包含大量正在由應用程序使用的內存頁,相比之下會話0休眠數據要小得多,這將大大降低寫入磁盤所需的時間。
Win7/Win8系統關機集成對比測試(來源於網絡)
簡而言之,休眠就是將系統狀態和內存內容保存到磁盤上的一個文件(hiberfil.sys)中,然後在恢復時重新讀取該文件,並將內容恢復到內存中。借助此項技術將啟動時間顯著縮短,因為在大多數系統中,讀取休眠文件並重新初始化驅動程序的方式將大大加快啟動速度(在測試過的大部分系統中,速度普遍提高了30-70%)。
休眠恢復分段啟動處理
與執行完整系統初始化相比,恢復休眠的系統會話的工作量將大大減少,這是啟動速度加快的原因之一。同時,我們添加的多階段恢復功能可以並行利用多核系統的所有核心,將讀取休眠文件和解壓內容的工作分割處理,這是啟動速度加快的另一個原因。這對於偏好休眠的各位讀者也是一個好消息,因為該功能也會加快休眠的恢復速度。