• <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>

            milkyway的窩

            最初想法的誕生地

             

            wince下的地址映射知識點滴

            1.如果是在bootloader中打開MMU之前,程序訪問設備寄存器,可以直接操作物理地址,無需虛實映射。

            2.wince啟動后,硬件上ARM和X86體系的處理器啟動了MMU,操作系統只能訪問到虛擬地址,不能直接操作物理內存了。但是如果是X86的CPU,由于它的外設I/O端口和存儲器空間分開編址,可以直接嵌入匯編或者使用宏read_port_xxx,write_port_xxx來讀寫設備寄存器的物理地址。

            3.wince軟件結構里對應MMU的是一個名為OEMAddressTable的數據結構(源文件oeminit.asm中),其中建立了物理地址和虛擬地址的靜態映射關系,也可以在其中改動系統所能識別物理內存的大小,以支持大內存。

            4.我們也可以在wince啟動后調用CreateStaticMapping和NKCreateStaticMapping來實現OEMAddressTable中的這種物理地址和虛擬地址的靜態映射關系。

            5.建立了靜態映射關系的虛擬地址只能由內核模式下的程序來操作,例如 ISR。除非你在定制系統時,選擇了full kernal mode,使所有程序都運行在完全內核模式下,這將導致系統不穩定。

            6.如果要在驅動程序中訪問設備寄存器,必須建立動態虛擬地址映射,可以調用MmmapIoSpace函數來實現,或者通過VirtualAlloc和VirtualCopy函數來實現。其實MmmapIoSpace內部就調用了后者。

            7.在驅動中訪問虛擬地址時,必須是非緩存段(位于0xA0000000 到 0xBFFFFFFF )。

            8.使用VirtualCopy函數映射物理內存時,其lpvSrc參數必須右移8位,且相應的fdwProtect參數必須帶page_physical。

            9.如果是ARM體系的處理器,訪問掛在系統總線上的設備寄存器前,必須先把總線地址轉化成CPU的地址,通過HalTranslateBusAddress實現兩種物理地址的變換,然后再調用MmmapIoSpace函數作虛實地址的轉換。
              wince5.0下可以使用CreateBusAccessHandle(總線注冊表路徑)+BusTransBusAddrToVirtual來實現總線物理地址到系統虛擬地址的直接變換。

            posted on 2007-03-27 22:39 milkyway 閱讀(2767) 評論(2)  編輯 收藏 引用 所屬分類: Wince學習小結

            評論

            # re: wince下的地址映射知識點滴 2008-03-14 18:20 lll

            不錯的稿子  回復  更多評論   

            # re: wince下的地址映射知識點滴 2008-07-29 16:18 wogo

            大哥,你寫的東西很有價值啊。通俗易懂。我今天一整天都在看你的博客。
            真的非常感謝你,有了你的幫助。我進步很快。非常感謝你。你太牛了。  回復  更多評論   

            導航

            統計

            公告

            隨筆皆原創,文章乃轉載. 歡迎留言!

            常用鏈接

            留言簿(37)

            隨筆分類(104)

            隨筆檔案(101)

            文章分類(51)

            文章檔案(53)

            wince牛人

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            評論排行榜

            香蕉久久久久久狠狠色| 97久久久久人妻精品专区| 久久播电影网| 久久亚洲sm情趣捆绑调教 | 久久se精品一区精品二区国产| 久久国产成人| 99久久777色| 99久久精品免费看国产一区二区三区 | 韩国无遮挡三级久久| 亚洲欧洲精品成人久久奇米网| 99久久久精品| 久久久www免费人成精品| 国产综合免费精品久久久| 亚洲AV乱码久久精品蜜桃| 久久亚洲中文字幕精品一区四 | 久久强奷乱码老熟女网站| 久久人人爽人人精品视频| 青青青伊人色综合久久| 久久精品无码一区二区无码| 精品久久久中文字幕人妻| 一本久道久久综合狠狠躁AV| 精品无码人妻久久久久久| 久久91精品国产91久久户| 国产精品久久精品| 国产午夜久久影院| 日韩欧美亚洲综合久久影院d3| 久久国产乱子伦免费精品| 男女久久久国产一区二区三区| 狠狠色丁香久久婷婷综合蜜芽五月| 日韩久久无码免费毛片软件 | 久久er国产精品免费观看8| 精品国产综合区久久久久久| 99久久精品久久久久久清纯| 国产午夜精品久久久久九九| 久久99久久成人免费播放| 色综合久久久久综合99| 麻豆久久久9性大片| 久久这里只有精品18| 久久大香香蕉国产| 国产激情久久久久影院老熟女免费 | 亚洲精品无码久久毛片|