為什么Android手機(jī)的ROM和RAM顯示的都不是最大值?如標(biāo)稱為ROM:512MB,RAM:512MB,實(shí)際ROM:350MB,RAM:350MB。想知道原因嗎?答案在這里。
簡(jiǎn)單的來說,拿就ROM來說,一部分是被BootLoader和Radio占用了,當(dāng)然如果你要忘記了算system占用的,那么ROM就顯得更少了,個(gè)別的系統(tǒng)還會(huì)自己定制一個(gè)空間用來存儲(chǔ)特殊需要的功能,比如CD機(jī)模擬等,也會(huì)占用ROM空間。
同樣,對(duì)于RAM來說,同樣的道理,一部分被BP(Radio等)占用,用于處理通話和modem,當(dāng)然也有部分設(shè)備在BP部分使用了單獨(dú)的內(nèi)存,但相對(duì)比較少見。還有一部分被顯存占用了,這個(gè)和windows上一樣的道理。
產(chǎn)品給出的那個(gè)值都是理論值,當(dāng)然它也確實(shí)有這么大。但是我們的手機(jī)并不是裸機(jī)呀,你要安裝系統(tǒng)啊,然后這部分會(huì)占用一定的RoM。另外,手機(jī)會(huì)分配一定空間作為緩存空間。最后剩下的就是用來安裝軟件的硬盤。
同理,RAM也是這個(gè)原理,開機(jī)后會(huì)分配一定空間運(yùn)行安卓系統(tǒng),剩下的才是給你來運(yùn)行第三方軟件的。所以不管怎么看,實(shí)際值小于理論值是很正常的。
曾經(jīng)有一個(gè)疑問,既然在電腦內(nèi)存中,ROM指的是正常情況下不可擦寫的存儲(chǔ)器,那為什么手機(jī)上的ROM是可以安裝app的呢。
下面我們大體了解下手機(jī)內(nèi)存:
運(yùn)行內(nèi)存與物理內(nèi)存(也即所說的RAM和ROM)
智能手機(jī)的內(nèi)存分運(yùn)行內(nèi)存RAM(系統(tǒng)內(nèi)存)和物理內(nèi)存ROM(非運(yùn)行內(nèi)存)兩種:
①手機(jī)的運(yùn)行內(nèi)存相當(dāng)于電腦的內(nèi)存,即RAM(隨機(jī)存取存儲(chǔ)器Random Access Memory);RAM越大,手機(jī)能在運(yùn)行狀態(tài)下運(yùn)行多個(gè)程序且流暢。當(dāng)RAM不足的時(shí)候就會(huì)提示「Out of memory」錯(cuò)誤。因?yàn)檐浖\(yùn)行的時(shí)候都要從外存上調(diào)入內(nèi)存RAM,CPU是跟RAM通信的。CPU不直接跟外存通信,因?yàn)镽AM存取速度比外存快多了。手機(jī)運(yùn)存(RAM)決定手機(jī)的速度和處理強(qiáng)度。手機(jī)系統(tǒng)內(nèi)存RAM一般使用進(jìn)程管理之類的軟件來查看。剛開機(jī)的時(shí)候的手機(jī)系統(tǒng)內(nèi)存是最大的,開機(jī)后來電管家、防火墻、自動(dòng)鎖鍵盤等軟件就自動(dòng)運(yùn)行并且常駐內(nèi)存。
②手機(jī)的非運(yùn)行內(nèi)存,相當(dāng)于電腦硬盤的系統(tǒng)分區(qū),即ROM(Read-Only Memory);ROM越大,就像硬盤越大,能存放更多的數(shù)據(jù)。
這里就出現(xiàn)矛盾了!為什么手機(jī)ROM相當(dāng)于電腦硬盤? 眾所周知,內(nèi)存在電腦上的概念包含了ROM和RAM,那為何現(xiàn)在手機(jī)ROM卻跟電腦硬盤等同了呢。
經(jīng)過查資料我發(fā)現(xiàn):之所以等同,那是因?yàn)镽OM可永久保留數(shù)據(jù)的特性,再加上現(xiàn)在已近實(shí)現(xiàn)了ROM的可擦寫功能,這樣最終來看,ROM的所有功能跟硬盤的功能確實(shí)如出一轍。
換句話說:以前的ROM由于只能一次寫入,修改起來相當(dāng)麻煩且價(jià)格昂貴。所以只能存儲(chǔ)一些不會(huì)更改的數(shù)據(jù),比如主板BIOS信息,具體需要修改的數(shù)據(jù)還是要交給硬盤處理。但隨著時(shí)代進(jìn)步,可擦寫的ROM,尤其是“閃存”這種新型rom的出現(xiàn),已經(jīng)使得我們拋棄硬盤成為了可能。
舉個(gè)例子:我們經(jīng)常在裝系統(tǒng)的時(shí)候,把PE系統(tǒng)做到優(yōu)盤里面,用優(yōu)盤啟動(dòng)電腦進(jìn)入PE系統(tǒng)。這樣進(jìn)入后的系統(tǒng),跟硬盤無關(guān)。完全就是閃存這種ROM當(dāng)做存儲(chǔ)操作系統(tǒng)的地方,內(nèi)存條RAM當(dāng)做系統(tǒng)和軟件運(yùn)行空間。 這其實(shí)就是當(dāng)前手機(jī)內(nèi)存的組成原理。 手機(jī)ROM就是優(yōu)盤,手機(jī)RAM就是內(nèi)存條。
再舉個(gè)例子:某款安卓手機(jī)小C的rom為4G,除掉系統(tǒng)分區(qū),其他的虛擬為內(nèi)置sd卡,其實(shí)就一個(gè)4G的閃存芯片,你可以簡(jiǎn)單理解為分為了3個(gè)區(qū)(系統(tǒng)區(qū)+用戶數(shù)據(jù)區(qū)+內(nèi)置sd區(qū)),事實(shí)上分區(qū)很多。
現(xiàn)在的手機(jī)rom大部分都是這樣設(shè)計(jì),比如三星和華為的手機(jī)都是這樣,標(biāo)稱的大rom實(shí)際上大部分都虛擬成了內(nèi)置sd。
所以,由于是分區(qū)時(shí)設(shè)置的容量,rom是可以調(diào)整的,比如一塊硬盤上,c盤和d盤、e盤的大小都是可以調(diào)整的,區(qū)別是安卓系統(tǒng)用戶自己很難調(diào)整。
先看安卓的分區(qū),安卓系統(tǒng)一般把rom芯片分成7個(gè)區(qū),如果再加上內(nèi)置sd卡這個(gè)分區(qū),就是8個(gè):
hboot分區(qū)----------負(fù)責(zé)啟動(dòng)。
radio分區(qū)----------負(fù)責(zé)驅(qū)動(dòng)。
recovery分區(qū)-------負(fù)責(zé)恢復(fù)。
boot分區(qū)-----------系統(tǒng)內(nèi)核。
system分區(qū)---------系統(tǒng)文件。
cache分區(qū)----------系統(tǒng)緩存。
userdata分區(qū)-------用戶數(shù)據(jù)。
大家看到?jīng)]有,前6個(gè)區(qū)的容量在系統(tǒng)信息里面是看不出來的,我們看到的rom總?cè)萘浚鋵?shí)就是第7個(gè)區(qū)userdate區(qū)的大小,這個(gè)區(qū)主要裝一些軟件,是用戶可以使用的分區(qū)。這個(gè)分區(qū)的大小直接影響到安裝軟件的數(shù)量。也就是說userdate區(qū)就是我們常說的“可用rom”
在安卓里,雖然軟件可以安裝到卡中,但是一些系統(tǒng)軟件最好還是安裝到userdata分區(qū),否則會(huì)出現(xiàn)加載的一些小問題,比如使用的桌面軟件和一些在桌面上顯示插件的軟件。并且就算你把軟件都裝到卡里,userdata分區(qū)還是會(huì)不斷減小。就像在電腦里,就算你把軟件裝到D盤,仍然會(huì)在c盤生成一些系統(tǒng)文件,占掉c盤空間一樣。
關(guān)于手機(jī)顯示的RAM是減去了顯存剩下的,手機(jī)屏幕分辨率越大,屏幕尺寸越大,需要的顯存就越大,另外安卓系統(tǒng)本身要用掉一些運(yùn)存,這個(gè)因手機(jī)而異,所以會(huì)造成有的1G RAM的手機(jī)通常在設(shè)置里面查看只有600多。
網(wǎng)絡(luò)資料:(請(qǐng)著重看下文藍(lán)色標(biāo)注部分)
以前ROM一旦出廠后上面存儲(chǔ)的數(shù)據(jù)就無法改寫或刪除,同時(shí)數(shù)據(jù)不會(huì)因斷電而丟失。后來,一種新型的EEPROM(電子式可抹除可編程只讀內(nèi)存)代替了原來的ROM。再后來,F(xiàn)lash Memory(閃存)代替了EEPROM,閃存可以很容易的改寫。現(xiàn)在我們說智能手機(jī)中的ROM一般指的是Flash Memory(NOR型)。
在Android手機(jī)中,一部分ROM被安裝了操作系統(tǒng)(固件包),也有可能預(yù)裝了很多程序,就像Windows的系統(tǒng)盤,這部分被保護(hù)起來(可能通過軟件設(shè)置的權(quán)限保護(hù)而不是硬件保護(hù),root手機(jī)之后能夠?qū)@部分區(qū)域進(jìn)行讀寫),對(duì)于普通用戶ROM是只讀的,只有獲得操作系統(tǒng)的最高權(quán)限(Root)才能向里面寫入數(shù)據(jù),也就是我們所說的刷ROM包。另外一部分ROM空間分配給用戶用來存儲(chǔ)數(shù)據(jù),這部分區(qū)域仍舊稱為「只讀」,但已經(jīng)完全脫離了「Read-Only Memory」,被稱作「手機(jī)內(nèi)部存儲(chǔ)」或「機(jī)身內(nèi)存」,與外部存儲(chǔ)「內(nèi)存卡」相對(duì)。
手機(jī)存儲(chǔ)和存儲(chǔ)卡(經(jīng)過上面的解釋我們應(yīng)該明白:手機(jī)存儲(chǔ)就是手機(jī)內(nèi)部ROM可擦寫閃存,存儲(chǔ)卡就是外部手工插上的閃存SD類型卡)
平時(shí)在安裝程序的時(shí)候,會(huì)被提示是裝在手機(jī)存儲(chǔ)和存儲(chǔ)卡里。盡量要把大文件放到內(nèi)存卡里,因?yàn)槭謾C(jī)儲(chǔ)存要預(yù)留一些空間做緩存(比如電腦上好多聊天記錄或者存檔文件會(huì)存儲(chǔ)到c盤),太滿了會(huì)影響手機(jī)系統(tǒng)的運(yùn)行,就像電腦系統(tǒng)C盤。
不過對(duì)于用戶來說 ,沒有相關(guān)常識(shí)的用戶可能會(huì)比較迷惑。 我很贊賞apple對(duì)這樣的問題的處理方式,apple一直直觀地引導(dǎo)用戶理解產(chǎn)品的功能和性能而不是宣傳其技術(shù)參數(shù),比如ipod可以存xxxx首歌,等等。
從宣傳的角度來講:一般用戶都以為大就比較好,利于宣傳產(chǎn)品的性能,甚至有些還虛標(biāo)。從技術(shù)的角度來講:說最大值也沒錯(cuò),因?yàn)楸幌到y(tǒng)占用了一部分或可見或隱藏而已。
另外根據(jù)硬件廠商的慣例,存儲(chǔ)的容量廠商都是按照1000算的,不一致。曾經(jīng)發(fā)生過有人買了500GB買了一款500G的移動(dòng)硬盤發(fā)現(xiàn)容量只有465G,然后認(rèn)定是虛標(biāo)欺詐去退貨,商家很無辜的事情。
暫時(shí)沒想到1000進(jìn)制的意義何在?一張32G的SD卡,顯示29G也好(1024進(jìn)制),顯示31.9G也好(1000進(jìn)制),它始終就是固定那么大的。不會(huì)因?yàn)槟泔@示的多了,就感覺容量大了。這似乎是一種掩耳盜鈴的行為。
同理,如果手機(jī)上是1000進(jìn)制,跟電腦上的計(jì)算方式將會(huì)不同,但是按照1024換算的時(shí)候,會(huì)顯示偏小。