摘要
時(shí)至今日,2GB、4GB大內(nèi)存成為個(gè)人電腦基本配置。而究竟應(yīng)該采用32位還是64位操作系統(tǒng),成為眾人爭(zhēng)論的話題。本文介紹32位win7下4GB內(nèi)存消失的原因,同時(shí)試圖通過(guò)歷史的視角,給64位4GB內(nèi)存問(wèn)題一個(gè)可供參考的答案。
已經(jīng)用上win7的用戶都會(huì)發(fā)現(xiàn),除了入門、家庭、專業(yè)和旗艦以外,win7統(tǒng)統(tǒng)分為32位版和64位版。兩者最大的差異在于64位版支持4GB以上大內(nèi)存,而4GB內(nèi)存在32位win7只能最高用到3.75G。這是為什么呢?
個(gè)人電腦,除了顯卡、聲卡、硬盤等等主要設(shè)備外,還有著大量周邊設(shè)備,usb接口需要控制芯片,SATA硬盤有AHCI控制器,主板芯片組還有各種底層設(shè)備,如果是筆記本電腦,藍(lán)牙、Wifi、攝像頭,甚至指紋識(shí)別器都塞在一個(gè)小小的計(jì)算機(jī)中。整個(gè)電腦就好像一個(gè)小城鎮(zhèn),我們使用電腦打開(kāi)攝像頭,win7這個(gè)“市長(zhǎng)”就要去訪問(wèn)攝像頭,怎么找到攝像頭在哪里呢?就好比城鎮(zhèn)里面有門牌號(hào)一樣,電腦里的攝像頭也有地址,這個(gè)地址就映射在內(nèi)存中。win7利用一種叫做MMIO的技術(shù),讓程序訪問(wèn)攝像頭時(shí)直接訪問(wèn)內(nèi)存,這樣做的好處是讓程序無(wú)需考慮復(fù)雜的設(shè)備調(diào)用問(wèn)題,但壞處就是占用了內(nèi)存地址。
當(dāng)相當(dāng)多的周邊設(shè)備在內(nèi)存中映射地址,就占用了4GB中的很大一部分,但實(shí)際上,占用的這部分內(nèi)存僅僅是內(nèi)存的地址而已,內(nèi)存中并沒(méi)有數(shù)據(jù),訪問(wèn)也是要訪問(wèn)相對(duì)應(yīng)的外設(shè),而這部分內(nèi)存范圍,被稱為PCI Memory Address Range。
其實(shí)早在XP時(shí)代這種技術(shù)已經(jīng)采用,因?yàn)槟菚r(shí)的主流內(nèi)存不過(guò)幾百兆,而被占用的地址大多數(shù)都在2GB范圍以上,但是隨著內(nèi)存價(jià)格下降,大內(nèi)存成為常態(tài),4GB內(nèi)存問(wèn)題隨之出現(xiàn)。
既然是一部分地址被占用,只要釋放這部分地址就可以解決4GB問(wèn)題了。事實(shí)上這也正是大量4GB破解軟件的基本原理。那么我們是否有必要通過(guò)軟件來(lái)解決4GB問(wèn)題?
別急,讓我們先聽(tīng)一段故事。
1985年,個(gè)人電腦領(lǐng)域方興未艾,各種產(chǎn)品層出不窮,開(kāi)放平臺(tái)的IBM兼容PC剛剛打敗了喬布斯的APPLE系列,一時(shí)春風(fēng)得意,傲立潮頭。當(dāng)時(shí)的PC機(jī)采用Intel 80286 CPU,集成13萬(wàn)個(gè)晶體管,最高運(yùn)算速度20Mhz,內(nèi)存支持16MB,最關(guān)鍵的是,80286是16位。Intel的工程師們并不滿足,他們?cè)O(shè)計(jì)出了集成27.5萬(wàn)個(gè)晶體管,運(yùn)算速度高達(dá)25Mhz的CPU——80386,而它支持的內(nèi)存大小——沒(méi)錯(cuò),你猜的沒(méi)錯(cuò)——最高支持4GB,因?yàn)樗?2位的。
然而,IBM的大爺們并不買賬,他們認(rèn)為自己并不需要一個(gè)32位的CPU,只需要把16位的CPU做的更快就可以了,而當(dāng)時(shí)年輕的Intel告訴IBM,讓CPU運(yùn)行的更快的辦法,就是從16位進(jìn)化到32位。
終于,IBM推出了32位個(gè)人電腦——386,差不多5年后,微軟推出了windows3.0,模擬支持了32位操作環(huán)境,銷售大獲成功。微軟統(tǒng)治個(gè)人電腦領(lǐng)域的霸業(yè),正開(kāi)始于那一年。
一轉(zhuǎn)眼,30年過(guò)去了,在這個(gè)CPU計(jì)算能力數(shù)以G記的時(shí)代,個(gè)人電腦終于達(dá)到了32位內(nèi)存的瓶頸——4GB。個(gè)人電腦從16位進(jìn)化到32位,等了5年時(shí)間,而從32位進(jìn)化到64位,一等就是30年。
其實(shí),早在2003年的Windows Server 2003企業(yè)版,即使是32位版本,最高支持內(nèi)存已經(jīng)達(dá)到了32GB。而Windows2000高級(jí)企業(yè)版就已經(jīng)可以支持8GB內(nèi)存。由此可見(jiàn),32位下依然可以通過(guò)技術(shù)實(shí)現(xiàn)支持超大內(nèi)存。但是,繼續(xù)在32位體系內(nèi)修修補(bǔ)補(bǔ)并不利于個(gè)人計(jì)算機(jī)整個(gè)產(chǎn)業(yè)。畢竟,32位是遲早都要跨越的一道坎兒。
當(dāng)然,64位windows7尚且存在或多或少的兼容問(wèn)題,但隨著使用人數(shù)的增加,這些問(wèn)題都將逐步得到解決。而且,64位windows7提供了一個(gè)程序模擬環(huán)境,可以模擬32位環(huán)境運(yùn)行32位程序。
但,筆者并不鼓勵(lì)小內(nèi)存用戶采用64位系統(tǒng)。64位win7環(huán)境下,因?yàn)閿?shù)據(jù)位寬的增加,耗用內(nèi)存同樣會(huì)增加。2GB的用戶用win7 64位,會(huì)發(fā)現(xiàn)比32位系統(tǒng)消耗更多內(nèi)存。
在目前的情況下,如果你電腦的內(nèi)存在3GB以下,32位確實(shí)是最優(yōu)選擇。如果你的內(nèi)存已經(jīng)達(dá)到4GB,64位的win7正在朝你微笑。
聯(lián)系客服