聽內(nèi)行說書:揭開Vista瘦身版真實(shí)面紗
坊間流傳著一個(gè)Windows 7的Mini版本的消息,這或許是人們對龐大的Vista的一種“撥亂反正”心理的表現(xiàn)。
傳言真是奇怪。即便真相已大白于天下,人們還是繼續(xù)相信謊言。
“MinWin”就是這樣一個(gè)典例。幾個(gè)月來,有些行業(yè)專家猜測,微軟的Windows 7會(huì)來一次徹底了斷; 操作系統(tǒng)的核心要素將重新改寫; 向后兼容將交給虛擬機(jī)和仿真機(jī)制去實(shí)現(xiàn)。
這一說法的核心就是“MinWin”。有人提到,微軟在改寫Windows內(nèi)核,以便內(nèi)核更輕便、更簡潔。盡管這么做可能會(huì)打破整個(gè)Windows軟硬件生態(tài)系統(tǒng)!癕inWin”就是未來,它很新、很酷。正如任何一名行業(yè)媒體專業(yè)人士會(huì)告訴你的那樣,提升人氣的正是又酷又新的技術(shù)。
但根據(jù)日前微軟在網(wǎng)上發(fā)布的諸多內(nèi)容,Windows 7實(shí)際上更像“Windows Vista第二版”: 建立在Windows Vista所顯露的現(xiàn)有NT 6.x內(nèi)核架構(gòu)上的進(jìn)化升級版,“MinWin”周圍的泡沫于是隨之破裂。
但“MinWin”的擁躉們還是不依不饒、深信不疑。他們說: “即便不是Windows 7,也會(huì)是將來的某個(gè)版本。MinWin會(huì)迎面而來。”實(shí)際上,如果微軟完全“扔掉塞入到Vista及衍生版本中的所有用戶模式方面的臃腫內(nèi)容”,“MinWin”也許“現(xiàn)在”就出現(xiàn)在世人面前了。
“MinWin”的擁躉們似乎普遍存在這樣一種共同觀點(diǎn): 如果能夠以某種方式“精簡”Vista,扔掉沒有必要的后臺服務(wù)、扔掉所有那些花哨的Aero臃腫內(nèi)容,最后會(huì)得到大大瘦身的操作系統(tǒng),就像Windows XP甚至Windows 2000那樣精簡。這種頗吸引人的想法增添了“MinWin”的神秘色彩。但這明顯是不真實(shí)的。
事實(shí)是,就算扔掉所有新的服務(wù)和用戶界面方面的花哨特性,Windows Vista/7核心架構(gòu)仍然相當(dāng)臃腫―比Windows XP或者2000龐大得多。
如果從基本的Windows Vista Business(SP1)安裝開始入手,就會(huì)看到這樣的工作負(fù)荷: 近600個(gè)線程分布在大約60多個(gè)進(jìn)程上。只要禁用超級預(yù)。⊿uperfetch)、檢索(Indexing)、快速啟動(dòng)(ReadyBoost)及其他幾項(xiàng)不重要的服務(wù),就可以把線程數(shù)量減少到450個(gè)至500個(gè); 順便說一下,其中98個(gè)線程屬于System(即Windows Vista內(nèi)核)級別。
相比之下,默認(rèn)的Windows XP Professional安裝只有300多個(gè)線程分布在大約40個(gè)進(jìn)程上。精簡一點(diǎn),完全可以把線程數(shù)量控制在300個(gè)以下。如果把操作系統(tǒng)精簡到最低限度,可以做到200余個(gè)線程分布在20個(gè)或更少的進(jìn)程上,其中57個(gè)線程屬于Windows XP內(nèi)核進(jìn)程(即System級別)。
而Vista即便精簡到最低限度(禁用每項(xiàng)不重要的服務(wù),所有用戶界面的花哨特性被關(guān)閉),仍會(huì)生成多出41%的線程(340個(gè)對241個(gè))分布在多出50%的進(jìn)程(30個(gè)對20個(gè))上,你就會(huì)明白讓Vista進(jìn)行“瘦身”有多困難。光Vista內(nèi)核生成的線程就要比Windows XP多72%(98個(gè)對57個(gè))。
就算Windows 2008運(yùn)行在“服務(wù)器核心”配置環(huán)境下(這種環(huán)境被稱為是“MinWin”的前身),仍會(huì)生成大約300個(gè)線程,它甚至沒有像樣的外殼在運(yùn)行(運(yùn)行的只是命令行)。當(dāng)然,“服務(wù)器核心”內(nèi)核生成的線程占了其中的98個(gè)。
綜上所述,即便精簡到最低限度,并且禁用了用戶界面方面所有沒有必要的特性,那么Vista在配置完全一樣的Windows XP系統(tǒng)(這兩種測試場景都使用Office 2007)上運(yùn)行,執(zhí)行OfficeBench測試腳本的時(shí)間仍要多出40%,更多的并發(fā)線程(尤其是在內(nèi)核中)意味著需要更多的潛在CPU開銷,從而影響了線性性能。
說白了,認(rèn)為Vista的問題完全僅限于用戶模式的想法純屬無稽之談。Vista各方面都比較臃腫,而這包括內(nèi)核及遠(yuǎn)離核心的各個(gè)關(guān)鍵子系統(tǒng)。為了實(shí)現(xiàn)接近“MinWin”的目標(biāo),就需要破除各種機(jī)制; 而那樣一來,Windows實(shí)際上也就無法運(yùn)行了。