技術漫談:哪種操作系統最適合固態硬盤
和固態硬盤本身的技術進步相比,操作系統在對固態硬盤的支持上已經落后,如操作系統中的磁盤碎片整理功能和數據塊的大小等都需要針對固態硬盤進行調整,否則會對固態硬盤的性能和使用壽命帶來較大影響。
固態硬盤(Solid-state disk,SSD)是最近存儲領域的一個焦點話題。不少存儲專家看好固態硬盤的應用前景,認為固態硬盤將在提高計算機啟動和運行速度方面發揮重要作用。不過,人們對于固態硬盤究竟能發揮多大作用并沒有數。
實際上,固態硬盤能多大程度上發揮作用,不僅與固態硬盤自己有關,同樣也與操作系統的支持密不可分,而且兩者幾乎同樣重要。盡管目前還沒有哪種主流的操作系統為支持固態硬盤進行了專門的優化,但是,存儲專家指出,有些操作系統天生就比其他操作系統更能發揮固態硬盤的作用。而未來,支持固態硬盤肯定會成為操作系統的一個基本功能。
令人意外的測試結果
有人對近年來使用過的各種操作系統進行了測試,結果讓人頗感意外。人們發現Windows 2000對固態硬盤的支持最好,同樣的固態硬盤在更早的Windows 2000中的性能要比Windows XP、Vista、Mac OS X以及Linux中高很多。
固態硬盤設備制造商Patriot Memory公司的工程經理Saeed Arash Far說,他所在的公司進行的有關測試表明,使用Windows XP要比其他操作系統快5%~8%,原因是Windows 2000沒有應用程序在后臺運行。
“測試結果顯示,在Windows 2000中固態硬盤的性能最好,其次是Vista,它比Windows XP要好一些。不過,在使用Windows XP時,你還能終止那些在后臺運行的程序,而使用Vista時,你就根本無法終止那些后臺程序。”
根據Patriot Memory公司所做的測試,在Mac OS X系統中使用固態硬盤比Vista中稍稍快一點,而Linux又比這兩者更快一點,大約快1%~2%,快的原因與Windows相似,即Linux從來不在后臺運行任何程序。
“如果你對更多的操作系統做一個比較的話,你會發現,Windows 98是這些系統中對固態硬盤支持最好的,”Far說。不過,Windows 98也有缺點,就是不支持均衡損耗(wear-levelling)技術。wear-levelling是一種在NAND閃存中采用的技術,用來平均地在存儲設備中的各個位置寫入數據,以免總在存儲設備的某個區域寫入數據而導致這個區域過度磨損而不能再用。Far介紹說,如果他們公司的固態硬盤在Windows 98中使用,估計一年左右就會壞掉。
#p#
廠商之間相互指責
對于那些關注固態硬盤優點的用戶而言,可能更為關心未來三個主流的操作系統(Vista 、XP和Mac OS X)對固態硬盤的支持情況。不過,事情有些復雜,不少固態硬盤廠商對操作系統目前的進展很不滿意,甚至發出了指責。
去年7月,SanDisk公司CEO Eli Harari就批評微軟說,微軟的Vista在對固態硬盤的支持上非常不好,因而影響了用戶對固態硬盤的采購熱情,延緩了固態硬盤的普及。Harari還指責說,有些應用過于苛刻,因為它們需要非常復雜的固態硬盤控制技術來管理數據如何被傳送到固態硬盤。
但是,Harari的說法遭到了競爭對手之一的Micron公司的反駁。Micron公司把固態硬盤插入到SATA接口,分別在Vista、Windows XP和Mac OS X三種操作系統中對固態硬盤在數據處理方面的性能進行了測試,這些處理包括操作系統的啟動、文件的安裝、運行辦公軟件、關機等。根據發布在Micron公司網站上的一篇博客所述,測試結果表明,Vista、Mac OS X對固態硬盤的支持要比XP好。
Micron公司固態硬盤產品年市場經理Justin Sykes解釋說,這是因為在XP中數據的組織并不是以固態硬盤最有效的方式,即以4KB為一個數據塊,而Vista和Mac OS X則是以4KB為一個數據塊。不過,Micron沒有對同樣以4KB為一個數據處理單元的Linux進行測試。
“NAND閃存的數據存儲區是以4K為單位的,因此,任何系統如果不是以4K為單位來組織數據都會給它帶來挑戰。”Sykes說,“這會使得在后臺進行自動內存管理的操作效果大打折扣,這一操作原本是為了提高存儲空間利用率的,然而,這些后臺操作會消耗帶寬,而且還會給NAND閃存帶來磨損。”
根據Micron公司存儲系統開發部門副總裁Dean A. Klein的說法,固態硬盤在蘋果平臺上性能更好一些。“它啟動得更快一些,”他說,“因為Mac OS采用了不同的方式。當安裝了Windows系統的PC機啟動時,即使插入了固態硬盤,BIOS還是像以往一樣等待從硬盤啟動,而對于MacBook,你可以感覺到它的啟動非常快。我們相信,MacBook很聰明,它意識到了系統中有固態硬盤,而不是白白等待,它一定走了捷徑。”
Patriot Memory公司的Far也認為在支持固態硬盤上,Mac OS X要比Vista快1%左右。不過,他說,如果采用了虛擬化技術,比如在Mac OS X 10.5中部署了Parallels或者VMware的Fusion,再運行Vista操作系統時,測試結果會不一樣。
4KB的數據塊區更有效
Micron的測試表明,當Windows XP開始寫入與應用有關的數據時,這些數據很少會被分配到一個新的NAND閃存頁,而總是從一頁的一半開始寫入,而另一半則只能寫到另一個頁中。
“因此,控制器不得不處理這些情況,相應的,在擦除的時候也必須處理兩頁。”Far說,“而Vista中的數據寫入是逢0或者8開始,這樣在Vista中的數據更容易按照4K大小來組織。”
在NAND閃存中,數據塊是由一組頁面組成的,每頁的大小可以是512、2K、4K字節。因此,以4K字節為單位來寫入NAND閃存效率最高。
Intel公司NAND產品集團市場經理Troy Winslow說:“我們曾對操作系統做過研究,發現80%的操作系統對數據大小的要求在4KB到16KB之間,但是,很多固態硬盤基于老的控制器技術設計,它們的數據處理塊達到128KB.而更小一些數據塊有助于發揮固態硬盤的優勢。”
Winslow說,對XP和Vista分別進行的測試還表明,效率比較低的XP系統用固態硬盤代替普通硬盤后,其隨機的讀寫操作性能能提高10%,而同等條件下Vista的性能能提高25%.
NAND閃存制造商STEC公司市場及業務開發部門副總裁Pat Wilkison則認為,不同的操作系統對固態硬盤的支持沒有明顯的差別,“因為操作系統還沒有為支持固態硬盤做多少有實質意義的優化工作”。
#p#
有爭議的碎片整理
不過,在Vista和XP之間有個明顯的差別,那就是如果不進行更改,Vista默認是支持后臺的磁盤碎片整理的。對于固態硬盤而言,有時候這一操作沒有多少必要,甚至事實上這會加速固態硬盤的磨損。
盡管很多銷售商在出售那些使用固態硬盤并安裝有Vista的筆記本電腦和PC機時,會把磁盤碎片整理功能取消,但是,那些自己安裝或者升級到Vista的人可能不知道這一點,還會啟用碎片整理功能從而縮短固態硬盤的壽命。要關閉Vista的自動碎片整理功能,用戶可以從“開始”菜單進入“控制面板”主頁,選擇“系統和維護”,然后在“管理工具”中選擇“對硬盤進行碎片整理”,Vista允許用戶選擇是否要自動完成這一功能。
而Diskeeper公司技術支持副總裁Howard Butler不同意這種說法,他認為不管是普通硬盤還是固態硬盤都可以從碎片整理中受益,從而更加高效地完成數據存取。Butler說,與普通硬盤一樣,固態硬盤上的數據也被保存在連續的區域中,一旦數據刪除,這個存儲空間就被釋放出來,其中一些太小的存儲空間可能無法利用。而碎片整理可以對數據和被釋放的存儲空間進行重新安排。
Gartner的分析師Joseph Unsworth說,是Vista的預取功能讓裝有固態硬盤的系統啟動得比XP快,因為這一功能把常用的應用預先裝入系統內存中,因此,一旦需要它們可以馬上準備好。Vista中還引入了低優先級I/O的概念,那些在后臺運行的進程要訪問硬盤通常會比其他程序的優先級低。
Unsworth在一臺運行Vista的PC上安裝了Intel公司的X25固態硬盤,他說,給他印象最深的是,用固態硬盤替代傳統硬盤后,系統啟動速度大大加快了。
“盡管現在多達90多家供應商生產固態硬盤,但是,我更看好Intel、三星、STEC等幾家。因為這些廠商采用了更先進的架構,其固態硬盤芯片具有并行的多通道。例如,Intel公司的X25有10條通道。” Unsworth說,采用多通道架構的NAND閃存其每個并行通道就代表一個通往NAND芯片的數據流,通道越多其數據的吞吐能力越強,產品也越耐用。
操作系統何時會支持固態硬盤
雖然目前來看還沒有哪個主流的操作系統特別針對固態硬盤進行了優化,但可以肯定的是,隨著這項技術的發展,這是遲早的事情。去年的11月,在洛杉磯舉辦的微軟硬件工程師大會上,微軟就承諾,Vista的下一個版本Windows 7對固態硬盤的支持會好得多。
與Vista不同,如果Windows 7檢測到系統中的硬盤是固態硬盤,會自動關閉硬盤碎片整理功能。Windows 7還會預先刪除垃圾數據,這會阻止垃圾的收集,從而減緩固態硬盤的延遲,而垃圾的收集是導致固態硬盤寫入速度降低的主要因素。
微軟還計劃對固態硬盤進行認證,讓固態硬盤能知道它正在與Windows 7進行交互,從而為數據通過SATA接口傳輸確定合適的優先級。
Unsworth說,不管微軟會做什么工作,他都相信蘋果公司一定會因為它的操作系統封閉而受益。操作系統封閉意味著,蘋果公司可以自己控制開發計劃,因此更有可能針對固態硬盤進行優化。蘋果即將發布最新版的操作系統Mac OS X 10.6 (又稱“雪豹”),人們預計“雪豹”會對I/O進行優化,從而提高數據傳送和處理速度。
“我堅信蘋果公司會這么做,我也告訴過他們并向他們推薦過。如果系統從固態硬盤啟動,人們仍然發現還需要至少10秒鐘,實在有些說不過去?” Unsworth說,“而且,對于消費者而言,這種改進會成為一個很好的賣點,何樂而不為?”
【編輯推薦】