日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

揭開P930內(nèi)存大小的真相

揭開P930內(nèi)存大小的真相
在壇子上看了很多人的文章,都對P930的內(nèi)存太小不滿,而且大部分都都歸結(jié)于聯(lián)想設(shè)計人員把D盤的大小設(shè)的太大了,大大占用了系統(tǒng)運行內(nèi)存的大小.我一開始還是比較贊同這個觀點,不過今日由于需要對Symbian開發(fā),于是對Symbian核心進行了一番研究,發(fā)現(xiàn)大家之前的觀點并不盡然.
Symbian作為現(xiàn)代操作系統(tǒng),支持多任務(wù)同時運行,必不可缺的就是MMU(內(nèi)存管理單元),而MMU最大的用處就是提供虛擬地址到實地址的轉(zhuǎn)換,使得在多任務(wù)環(huán)境中,很好的保護了其他任務(wù)的數(shù)據(jù)和代碼.在Symbian的用戶模式下,是不能直接訪問實際物理內(nèi)存的.需要通過MMU進行內(nèi)存轉(zhuǎn)換.而Symbian在MMU的基礎(chǔ)上,引入了Symbian的內(nèi)存塊的概念,為RChunk對象,無論是系統(tǒng)的Stack/heap抑或是code區(qū),都是以RChunk為單元分配的.而所謂RAM文件系統(tǒng),也是建立在RChunk的基礎(chǔ)上了.
Symbian啟動的過程中,由bootloader到Ekern的過程中,就初始化了Ramdisk,我們可以通過RChunk的遍歷接口發(fā)現(xiàn)Ekern下有一個為EKern::RamDiskDriver的RChunk對象,大小為1XXK左右,里面存放了就是系統(tǒng)初始化下的D盤中的數(shù)據(jù).
在Symbian:Internal這本書中,提到,系統(tǒng)Ekern初始化中,需要初始化RamDIsk并且把一些RAMDISK初始化中需要的文件結(jié)構(gòu)保存進去.這樣來看,RAMDisk并不像Windows系統(tǒng)中的RAMDisk,是一次性Alloc內(nèi)存的,而是在使用過程中增大的.一開始只占用了1XX多K的ram,隨著你使用D盤文件的增加,占用的ram也越來越多.看到這里,也許很多人會問,那么D盤顯示的XXXXKb的大小又是怎么來的,這個問題其實也困惑了我不少時間,后來通過實驗才相同,這個大小是通過計算max(D盤當(dāng)前內(nèi)存,可用運行內(nèi)存)來確定的.在Nokia的手機中,為了防止用戶過量使用ramdisk而使得運存減少,使用了max(D盤當(dāng)前內(nèi)存,min(可用運行內(nèi)存,D盤設(shè)定值))來確定D盤的大小,而Lenovo就沒有這種限制了,這種限制的好壞也說不上,有好處也有壞處.但這不能算是Lenovo的設(shè)計失誤.
如果不相信的話,可以做個實驗,把一個2M的文件考入D盤中,然后運行大量的軟件,打開fileman和appman,就會發(fā)現(xiàn),可用的內(nèi)存與D盤大小不能,可能運存沒有了,D盤最大容量卻還是那個值.
看到這里,你大概明白了我的意思,D盤的大小并不影響運行內(nèi)存的多少,就算是D盤為1000M,只要沒用放東西進去,那么就不會消耗內(nèi)存的值,那么或許有人會問題,那為什么6681,6680有8M多的內(nèi)存,而我們只有5M呢,哦,這個問題解釋起來也不難,P930多了一塊外屏,多了176x12的主屏的空間需要自己的WindowsServer來繪制,所以就需要更多內(nèi)存來存放緩沖,這就占用了更多的內(nèi)存.而且現(xiàn)在6680,6681為了取得大內(nèi)存,使用fontroute屏蔽了ROM字體,而fontrouter暫時不支持P930屏蔽Rom字體,fontroute2可能支持,不過還在內(nèi)測中.而傳聞?wù)f6680是20M的ROM,而我們的P930才16M,所以少了運存也很正常.

說些題外話,P930的設(shè)計還是不錯的,畢竟使用的195Mhz的OMAP730 ,和Nokia使用的OMAP1710還是有很大距離的性能差距了,差不多少了一般多的MIPS.基本平臺的不相同也導(dǎo)致了很多軟件不能使用,不過Symbian上的大部分常用軟件都能使用,所以,還是物有所值的,如果外觀和質(zhì)量稍微好一點的話,那就更物超所值了.

    推薦閱讀