• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Jiang's C++ Space

            創(chuàng)作,也是一種學(xué)習(xí)的過(guò)程。

               :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            Windows Mobile的ROM,RAM可能會(huì)比較令人迷惑,這是因?yàn)椋翰僮飨到y(tǒng)所說(shuō)的ROM,RAM并不是硬件上的ROM芯片和RAM芯片。概念不同,所以必須理解清楚這個(gè)不同之后才能繼續(xù)。

            首先說(shuō)硬件上的ROM,RAM,我們購(gòu)買(mǎi)手機(jī)的時(shí)候,在手機(jī)參數(shù)里通常喜歡這么說(shuō)明(以我的HTC HD2為例):

            ROM:1024M
            RAM:576M

            這是什么意思呢?這指的是手機(jī)上面的兩顆芯片的數(shù)據(jù)容量,ROM這顆芯片其實(shí)并非真的Read-only,它的特點(diǎn)只是斷電后上面數(shù)據(jù)不會(huì)丟失,而RAM這顆芯片則跟我們PC上的內(nèi)存條芯片一樣,斷電后數(shù)據(jù)丟失。

            接下來(lái)是操作系統(tǒng)所說(shuō)的ROM和RAM,Windows Mobile的刷機(jī)其實(shí)就是將ROM文件的內(nèi)容寫(xiě)入到那顆ROM芯片去。而操作系統(tǒng)第一次啟動(dòng)的時(shí)候?qū)⑼瓿梢恍┖罄m(xù)的相關(guān)初始化。Windows Mobile所認(rèn)為的ROM,指的是ROM芯片中被寫(xiě)入的那些只讀的部分,這部分的內(nèi)容是不能改變的,(刷機(jī)才能改)那么剩下的能被程序和操作系統(tǒng)改變的,就是RAM了,所以RAM也不等同于硬件上的RAM芯片,它還包括了ROM芯片中可以讀寫(xiě)的那一部分。

            那么,下面所提到的ROM和RAM都是操作系統(tǒng)概念上的ROM和RAM,而不是硬件上ROM芯片和RAM芯片。

            任何Windows Mobile設(shè)備,ROM保存了整個(gè)操作系統(tǒng),包括操作系統(tǒng)自帶的那些應(yīng)用程序,也都在ROM里邊。如果ROM里邊的模塊(在資源管理器中看到的可執(zhí)行文件,通常是EXE和DLL,在這里稱之為模塊)沒(méi)有被壓縮,那么操作系統(tǒng)就它“當(dāng)?shù)貓?zhí)行”(Excute In Place,也就是縮寫(xiě)詞XIP);反之,如果ROM里邊的模塊是壓縮過(guò)的,那操作系統(tǒng)就只能先把模塊解壓縮到RAM中,然后再在RAM中執(zhí)行它。至于哪些模塊可以XIP,那是OEM相關(guān)的。

            使用XIP有很大好處,最重要的是節(jié)省了寶貴的RAM,也節(jié)省了模塊家載入RAM中所需要消耗的時(shí)間。

            那我們平常安裝的軟件,保存的配置,是存放在哪里呢?——存放在“對(duì)象存儲(chǔ)”(Object Store)或者卡上,存放在“對(duì)象存儲(chǔ)”或者卡上的可執(zhí)行模塊,是無(wú)法XIP的,只能先加載入RAM,然后再在RAM中執(zhí)行。

            上面提到了“對(duì)象存儲(chǔ)”,下面進(jìn)一步講解:

            Windows Mobile的RAM(再次提醒一下,指的不是硬件上的RAM芯片)分為兩個(gè)部分:

            其一就是“對(duì)象存儲(chǔ)”,“對(duì)象存儲(chǔ)”里的內(nèi)容在斷電后繼續(xù)保留,不會(huì)丟失;另一個(gè)就是“程序內(nèi)存”,程序內(nèi)存的內(nèi)容會(huì)在斷電后丟失。

            “對(duì)象存儲(chǔ)”存放的內(nèi)容包括各種文件,數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)記錄,注冊(cè)表等;而“程序內(nèi)存”則存放應(yīng)用程序運(yùn)行時(shí)候的堆(heap)和棧(stack)。

            當(dāng)Windows Mobile啟動(dòng)的時(shí)候,它創(chuàng)建了單獨(dú)的4G虛擬地址空間,這4G的空間中劃分了33個(gè)格子,每個(gè)格子32M,所有的進(jìn)程共享這個(gè)地址空間,當(dāng)一個(gè)進(jìn)程啟動(dòng)的時(shí)候,操作系統(tǒng)就為它選一個(gè)格子來(lái)映射。這是跟桌面的Windows很不一樣的機(jī)制,據(jù)說(shuō)Windows CE 6.0已經(jīng)改進(jìn)了這種內(nèi)存機(jī)制,但最新版本的Windows Mobile 6.5其實(shí)還是基于Windows CE 5.x內(nèi)核的。微軟這么設(shè)計(jì)估計(jì)是因?yàn)橄牍?jié)省便攜式設(shè)備本來(lái)就很寶貴的資源,但這樣做的缺點(diǎn)顯而易見(jiàn),一是只能最多跑32個(gè)進(jìn)程(第1個(gè)格子總是用來(lái)映射前端進(jìn)程的地址空間),二是每個(gè)進(jìn)程默認(rèn)只能有32M的虛擬空間(雖然你還可以通過(guò)內(nèi)存映射文件機(jī)制或調(diào)用VirtualAlloc函數(shù)來(lái)分配超過(guò)32M的虛擬內(nèi)存)。

             

            我們?cè)赪indows Mobile的系統(tǒng)設(shè)置里面看到的“主內(nèi)存”,指的就是RAM。而ROM呢?ROM不光是只讀,我認(rèn)為它還是不可讀,幾乎不可見(jiàn)的,常規(guī)的程序是看不到ROM的,即便你能夠在資源管理器里找到那些屬于ROM的“文件”,但你還是無(wú)法讀取它或者將它“復(fù)制”出來(lái)。



            如上圖,主內(nèi)存分兩類,一是“存儲(chǔ)”,一是“程序”,其實(shí)也就是前面提到的“對(duì)象存儲(chǔ)”和“程序內(nèi)存”了。也許你發(fā)覺(jué)“程序”的總內(nèi)存只有460.02M,而不是硬件上標(biāo)稱的576M,要解釋這個(gè)可相當(dāng)不容易,具體參考我前面轉(zhuǎn)載的一篇文章:

            http://www.shnenglu.com/guogangj/archive/2010/12/19/136927.html
            posted on 2011-03-24 16:39 Jiang Guogang 閱讀(1035) 評(píng)論(2)  編輯 收藏 引用 所屬分類: Windows Embedded Programming

            評(píng)論

            # re: 淺析Windows Mobile內(nèi)存機(jī)制 2011-04-08 17:02 gejun
            呵呵,默默耕耘啊  回復(fù)  更多評(píng)論
              

            # re: 淺析Windows Mobile內(nèi)存機(jī)制 2011-07-28 22:45 Matrix Chen
            學(xué)習(xí)了。手機(jī)上的RAM、ROM一直讓我很疑惑  回復(fù)  更多評(píng)論
              

            国产精品99久久不卡| 中文字幕无码免费久久| 97精品伊人久久久大香线蕉| 久久久久无码中| 久久亚洲国产精品一区二区| 久久久久久亚洲AV无码专区| 影音先锋女人AV鲁色资源网久久| 人人狠狠综合久久亚洲高清| 久久久久亚洲av成人无码电影| 91精品国产高清久久久久久国产嫩草 | 亚洲伊人久久精品影院| 久久综合亚洲色一区二区三区 | 国产午夜精品久久久久九九| 一本伊大人香蕉久久网手机| 91久久婷婷国产综合精品青草| 狠狠色丁香婷婷综合久久来| 久久亚洲高清观看| 久久中文字幕视频、最近更新| 中文字幕无码久久人妻| 欧美日韩精品久久久免费观看| 人妻系列无码专区久久五月天| 久久婷婷午色综合夜啪| 亚洲女久久久噜噜噜熟女| 亚洲AV无码久久精品蜜桃| 91精品国产高清久久久久久io| 国产精品久久久久久福利漫画| 国产精品成人99久久久久 | 久久人人爽人人爽人人片AV高清 | 国产精品对白刺激久久久| 93精91精品国产综合久久香蕉| 污污内射久久一区二区欧美日韩 | 精品一二三区久久aaa片| 99久久er这里只有精品18| 很黄很污的网站久久mimi色| 99久久这里只精品国产免费| 久久久久久久久无码精品亚洲日韩| 94久久国产乱子伦精品免费 | 久久九九亚洲精品| 99久久做夜夜爱天天做精品| 久久久青草久久久青草| 久久99热这里只有精品国产|