青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

milkyway的窩

最初想法的誕生地

 

Windows CE內(nèi)存管理機(jī)制

      Windows CE引入了虛擬內(nèi)存機(jī)制管理多達(dá)4G的虛擬內(nèi)存,最大支持512MB的物理內(nèi)存.不同的CPU內(nèi)存管理方法不同。對(duì)于MIPS和SHX系列CPU來說,地址映射是由CPU完成的,CE內(nèi)核可以直接訪問512MB的物理內(nèi)存。對(duì)于x86系列和ARM系列的CPU來說,在內(nèi)核啟動(dòng)過程中它會(huì)將現(xiàn)有物理內(nèi)存地址全部映射到0x8000 0000以上的虛擬地址空間中供內(nèi)核以后使用,這個(gè)虛實(shí)映射機(jī)制軟件上通過OEMAddressTable實(shí)現(xiàn),硬件上要求具備MMU.
      參考microsun的文章:  
       "WINCE的內(nèi)存(包括SDRAM及FLASH)的配置包含兩個(gè)方面:源代碼(包括C和匯編)中的定義,及系統(tǒng)配置文件CONFIG.BIB中的定義。源代碼中需要定義內(nèi)存的物理及虛擬地址,大小,并初始化名為OEMAddressTable的結(jié)構(gòu)數(shù)組,以告知系統(tǒng)物理地址與虛擬地址的對(duì)應(yīng)關(guān)系,系統(tǒng)根據(jù)其設(shè)置生成MMU頁表。而CONFIG.BIB中一般會(huì)將內(nèi)存定義成不同的段,各段用作不同的用途。"
         我的理解是在*.h文件中聲明各虛擬地址,比如用到的寄存器結(jié)構(gòu)體.在虛實(shí)地址映射文件(如ARM下的map.a)的OEMAddressTable中建立虛實(shí)地址的靜態(tài)映射關(guān)系,包括RAM,FLASH各部分存儲(chǔ)空間. (OS啟動(dòng)后所能夠識(shí)別的物理內(nèi)存). 接著在config.bib的MEMORY段(參考HELP里的Memory Section)把RAM映射后的虛擬地址進(jìn)行分段,比如NK的大小,各種外設(shè)緩沖區(qū)的保留等.(注意這里是虛擬地址的劃分,必須建立在映射基礎(chǔ)上)  這種靜態(tài)的虛擬地址只能夠由內(nèi)核層訪問,如果在APP中訪問,還必須建立動(dòng)態(tài)映射.

       

posted on 2007-04-15 23:07 milkyway 閱讀(4632) 評(píng)論(4)  編輯 收藏 引用 所屬分類: Wince學(xué)習(xí)小結(jié)

評(píng)論

# re: Windows CE內(nèi)存管理機(jī)制 2007-04-17 13:41 相思酸中有甜

OEMAddressTable is a static (unchanging, available at startup without doing any work or setup) table of virtual -> physical mappings. The kernel is the only thing that has default access to the resources mapped by this table. If you are operating outside the OAL (i.e. in any kind of driver or application), you must use VirtualCopy() to copy or create memory page mappings. As mentioned above, you can copy any existing mapping as long as you have access to it. This includes a static mapping done by the OEMAddressTable. Some people will map all resources in the OEMAddressTable (so the kernel has access to everything), then just copy those mappings in drivers when they need to. This is not a best practice because it makes driver code less portable -- it is better to read the physical address of a component from the registry, then use the value found there to map to it. If you do this your driver code does not have to change if it is moved to a different platform or extended to use multiple components in different physical locations.

A mapping does not have to exist in OEMAddressTable in order for you to access the physical resources mapped. You can create a new mapping unknown to the OEMAddressTable by using VirtualCopy with the PAGE_PHYSICAL flag.

Config.bib reserves regions of memory that romimage knows about, but does not specify kernel memory regions.

by Kurt,
  回復(fù)  更多評(píng)論   

# re: Windows CE內(nèi)存管理機(jī)制 2007-04-17 13:42 相思酸中有甜

OEMAddressTable mentioned in this blog applies only to h/w based TLB designs like x86 and ARM. For SHx and MIPS, there is a architecture pre-defined mapping (512Mb cached and uncached regions) at bootup.

-- On ARM v6/v7 there is a bit (eXecute Never XN) which can be used to mark individual page entries. Once this is set, then any attempt to execute code from that page will fault. This most likely will be supported in future releases of CE.

-- There seemed to be lot of confusion (party our fault since there are so many ways you can map physical or virtual memory) on these APIs. In general remember that VirtualCopy can be used to create a virtual address mapped to either a physical address or another virtual address range. Also all the flags are well documented in MSDN so you should take a look at that.

by thx.

-Upender

  回復(fù)  更多評(píng)論   

# re: Windows CE內(nèi)存管理機(jī)制 2007-04-18 09:09 milkyway

In Windows CE 5.0 and earlier, virtual allocations below 2MB *in size* will be allocated inside of the address space of the process calling it, while allocations above 2MB *in size* will be allocated out of the shared address space. I was not talking about the address of the allocation, I was talking about the size.

by Sue

  回復(fù)  更多評(píng)論   

# re: Windows CE內(nèi)存管理機(jī)制 2008-07-29 15:55 wogo

hao!  回復(fù)  更多評(píng)論   

導(dǎo)航

統(tǒng)計(jì)

公告

隨筆皆原創(chuàng),文章乃轉(zhuǎn)載. 歡迎留言!

常用鏈接

留言簿(37)

隨筆分類(104)

隨筆檔案(101)

文章分類(51)

文章檔案(53)

wince牛人

搜索

積分與排名

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲欧美在线一区二区| 欧美在线三级| 在线亚洲观看| 久久精品欧美日韩| 欧美激情视频在线播放| 亚洲免费观看| 另类尿喷潮videofree| 国产精品多人| 亚洲欧洲日本国产| 久久精品亚洲一区二区三区浴池| 男女精品网站| 亚洲乱码国产乱码精品精可以看| 亚洲欧美制服中文字幕| 最新成人在线| 校园激情久久| 亚洲精品欧美精品| 久久精品毛片| 国产亚洲综合在线| 午夜精品久久久久99热蜜桃导演| 这里只有精品视频在线| 欧美激情中文不卡| 亚洲人成人一区二区在线观看| 亚洲第一毛片| 久久香蕉国产线看观看网| 国产视频在线一区二区| 午夜精品久久久久久久白皮肤| 亚洲亚洲精品在线观看| 国产精品swag| 亚洲一区三区电影在线观看| 亚洲激情成人| 国产精品高精视频免费| 午夜精品福利一区二区蜜股av| 久久久7777| 亚洲午夜在线观看视频在线| 亚洲精品视频中文字幕| 国产日韩欧美麻豆| 欧美激情在线播放| 国产精品丝袜久久久久久app| 亚洲在线视频网站| 久久尤物视频| 久久国产手机看片| 欧美激情一区二区三区成人| 亚洲欧美日韩在线一区| 亚洲第一狼人社区| 欧美xart系列高清| 国产日本亚洲高清| 你懂的视频一区二区| 国产精品久久午夜夜伦鲁鲁| 亚洲男女自偷自拍| 香蕉久久一区二区不卡无毒影院 | 久久精品夜夜夜夜久久| 日韩午夜三级在线| 日韩亚洲不卡在线| 亚洲精品久久久一区二区三区| 欧美华人在线视频| 黄色精品网站| 亚洲精品看片| 国产精品免费观看视频| 亚洲激情专区| 亚洲人成网站精品片在线观看| 久久精品国产亚洲a| 亚洲三级视频| 老司机久久99久久精品播放免费| 久久经典综合| 国产在线精品成人一区二区三区| 欧美a级大片| 亚洲国产精品www| 亚洲桃色在线一区| 亚洲一区激情| 国产精品v亚洲精品v日韩精品| 亚洲日韩中文字幕在线播放| 一本色道综合亚洲| 久久精品视频播放| 久久综合久久综合九色| 国产精品成人午夜| 一区二区三区欧美在线| 最新热久久免费视频| 美女日韩在线中文字幕| 久久精品成人欧美大片古装| 国产伦精品一区| 99在线精品免费视频九九视| 精品69视频一区二区三区| 一本色道久久加勒比精品| 国产精品99久久久久久久女警| 久久精品国产亚洲5555| 欧美成人一二三| 国产色产综合产在线视频| 欧美制服丝袜第一页| 欧美一区日韩一区| 国产精品v片在线观看不卡| 午夜精品福利一区二区蜜股av| 久久激情网站| 亚洲乱码精品一二三四区日韩在线| 欧美经典一区二区三区| 一区二区三区高清不卡| 久久国产婷婷国产香蕉| 亚洲国产欧美一区二区三区丁香婷| 亚洲欧美激情四射在线日| 在线一区二区三区做爰视频网站 | 国产精品视频成人| 久久精品99无色码中文字幕| 欧美黄色成人网| 亚洲欧美日韩综合| 亚洲电影免费观看高清| 欧美日韩综合在线免费观看| 亚洲精品中文字幕女同| 久久国产欧美精品| 日韩一级精品视频在线观看| 国产精品午夜在线| 免费av成人在线| 亚洲一区在线看| 午夜精品福利在线观看| 亚洲国产精品国自产拍av秋霞| 欧美日韩日本国产亚洲在线| 一区二区三区日韩在线观看| 免费在线观看一区二区| 亚洲国产精品成人久久综合一区| 国产精品99久久久久久有的能看| 国产欧美亚洲一区| 欧美欧美天天天天操| 91久久夜色精品国产网站| 久久精品成人一区二区三区蜜臀| 亚洲欧洲一区二区三区| 国产日韩欧美一区二区| 国产精品99免费看 | 一本一本久久a久久精品综合妖精| 久久精品国产99国产精品| 一个色综合导航| 亚洲区一区二区三区| 狠狠色香婷婷久久亚洲精品| 国产精品―色哟哟| 欧美性猛交视频| 欧美精品粉嫩高潮一区二区| 久久一区欧美| 久久久免费观看视频| 亚洲国产成人久久综合一区| 久久综合久色欧美综合狠狠| 国产亚洲欧美一区在线观看| 国产精品v欧美精品v日本精品动漫| 欧美成年人视频| 99re热这里只有精品视频 | 亚洲一区在线免费观看| 日韩亚洲不卡在线| 亚洲精品国产精品国产自| 在线免费高清一区二区三区| 激情亚洲成人| 在线观看一区二区精品视频| 国内精品视频在线播放| 国产一区欧美| 激情久久久久久久久久久久久久久久| 国产一区二区三区av电影| 国产婷婷色一区二区三区| 国产在线观看精品一区二区三区| 国产在线成人| 在线观看成人av| 国产精品久久久久久久第一福利| 欧美视频精品在线观看| 国产精品视频一二| 国产精品亚洲人在线观看| 国产女优一区| 黄色成人免费网站| 亚洲破处大片| 一区二区三区精品视频在线观看| a4yy欧美一区二区三区| 欧美一区二区视频在线| 久久久久国产精品厨房| 欧美国产日韩a欧美在线观看| 亚洲成色777777在线观看影院 | 国产视频自拍一区| 亚洲大胆在线| 亚洲天堂av综合网| 久久久777| 亚洲精品免费在线播放| 亚洲欧美日本国产专区一区| 久久国内精品自在自线400部| 欧美xx视频| 国产精品资源| 亚洲人成7777| 午夜精品久久久99热福利| 蜜桃久久精品一区二区| 99国内精品久久久久久久软件| 小黄鸭精品aⅴ导航网站入口| 蜜臀a∨国产成人精品| 国产精品视频免费观看| 最近中文字幕mv在线一区二区三区四区 | 欧美肉体xxxx裸体137大胆| 国产欧美一区二区三区在线看蜜臀| 在线观看不卡av| 欧美夜福利tv在线| 亚洲福利视频一区二区| 亚洲欧美激情精品一区二区| 欧美大片国产精品| 国产视频精品va久久久久久| a4yy欧美一区二区三区| 狼人社综合社区| 亚洲欧美在线另类| 欧美日韩精品免费观看视频完整 | 亚洲一区二区三区四区视频| 欧美+日本+国产+在线a∨观看| 你懂的国产精品永久在线|