国产精品免费无遮挡无码永久视频-国产高潮视频在线观看-精品久久国产字幕高潮-国产精品99精品无码视亚

Platform Builder配置文件

發(fā)布時間:2011-2-16 14:15    發(fā)布者:lytdzyxgs
關(guān)鍵詞: Platform
這篇文章主要講解PB的配置文件。從用途方面分析,PB包含兩種配置文件。分別是源碼配置文件和鏡像配置文件。下面分別講解這兩種配置文件。
一、源碼配置文件
源碼配置文件用于編譯源碼時使用。這里的源碼是指Windows CE公開的源碼,如驅(qū)動程序、系統(tǒng)應(yīng)用程序等。PB在編譯平臺時將這些公開的源碼即時編譯并將編譯鏈接后的文件復(fù)制到平臺工程子目錄里。記得前面講過PB在開始編譯時調(diào)用cebuild.bat批處理文件,cebuild.bat執(zhí)行的一個步驟是針對_DEPTREES變量指定的所有目錄執(zhí)行build.exe和sysgen.bat。build.exe在編譯源碼文件時會尋找當(dāng)前目錄下存放的源碼配置文件,根據(jù)配置文件的信息來編譯和鏈接,產(chǎn)生EXE、DLL、LIB文件。CE的源碼文件所在的目錄中都包含了相應(yīng)的配置文件,這些配置文件只對當(dāng)前目錄或者子目錄的源碼有效,具體分為三種:
DIRS文件:文件內(nèi)容和解釋如下:
DIRS:指定哪個子目錄的源碼要被編譯
DIRS_CE:只有為CE編寫的源碼才被編譯
OPTIONAL_DIRS:指定可選的目錄(很少使用這個選項),可以只編譯指定目錄而不是全部編譯。
SOURCES文件:通過宏定義來指定編譯和鏈接涉及到的文件,文件內(nèi)容和解釋如下:
TARGETNAME:指定編譯鏈接產(chǎn)生的主文件名
TARGETTYPE:指定編譯鏈接產(chǎn)生的文件的類型(決定了擴(kuò)展名)。文件共分三種:.lib(LIBRARY)和.dll(DYNLINK)和.exe(PROGRAM)。
TARGETLIBS:定義.lib鏈接文件,鏈接時需要這個文件。
SOURCES:源碼文件。包含擴(kuò)展名為*.c或*.h 或*.cpp的文件。
EXEENTRY:.exe文件的執(zhí)行代碼入口點。
sources.cmn文件是通用的SOURCES文件。在這個文件中可以指定作用于所有源碼文件的配置選項。
MAKEFILE文件:包含默認(rèn)的編譯和鏈接選項
整個編譯和鏈接過程:build.exe收集編譯和鏈接需要的數(shù)據(jù)(源碼文件、鏈接文件、編譯和鏈接選項)產(chǎn)生一系列的內(nèi)部環(huán)境變量,然后調(diào)用nmake.exe,nmake.exe根據(jù)內(nèi)部環(huán)境變量執(zhí)行編譯、鏈接,最后產(chǎn)生最終文件(*.lib *.exe *.dll)。
二、鏡像配置文件:
鏡像配置文件用于在制作CE鏡像文件時使用。CE的鏡像文件擴(kuò)展名為.bin。制作鏡像工具romimage.exe除了能夠產(chǎn)生.bin文件外,還能夠產(chǎn)生.abx和.sre文件。整個鏡像的制作過程由makeimg.exe控制,它調(diào)用cenlscmp.exe、fmerge.exe、res2.exe、txt2ucde.exe、regcomp.exe、romimage.exe等。這些工具大部分在前面已經(jīng)介紹過了。鏡像配置文件類型有.bib、.reg、.db、.dat、.str。如果主文件名為Common,表示是通用的配置文件。如果主文件名為Platform,表示是某一個BSP的配置文件。如果主文件名是Project,表示是定制的一個平臺的配置文件。在PB中修改配置文件前如果沒有把握最好先做好備份。
.bib(Binary image builder)
定義包含在內(nèi)核鏡像中的文件和模塊的名稱、加載位置。主要的bib文件有Common.bib,Config.bib, Project.bib, Platform.bib等。.bib文件內(nèi)部分為幾個部分:
【MEMORY】用于定義有效的物理內(nèi)存塊,在此將整個RAM分為幾個部分。
格式: 名稱 首地址 大小 內(nèi)存類型
名稱: 內(nèi)存區(qū)域的唯一名稱(RESERVE是預(yù)定義名稱,可以用多次,表示此區(qū)域保留)
首地址: 內(nèi)存區(qū)域的首地址(十六進(jìn)制表示)
大小: 內(nèi)存區(qū)域的大小(十六進(jìn)制表示)
內(nèi)存類型:分為三種。
RAM: 運(yùn)行所有進(jìn)程的內(nèi)存區(qū)域(整個區(qū)域必須是連續(xù)的,且不能含空洞)
RAMIMAGE:專用于保存鏡像的內(nèi)存區(qū)域。(每個.bin中只能指定一個RAMIMAGE)
RESERVED:保留內(nèi)存區(qū)域(這樣的區(qū)域一般用于驅(qū)動程序使用,如顯卡緩沖區(qū)、DMA緩沖區(qū))
舉例:
;名稱 首地址 大小 內(nèi)存類型
IF IMGRAM64
NK 80220000 009E0000 RAMIMAGE
RAM 80C00000 03000000 RAM
UMABUF 83C00000 00400000 RESERVED
ENDIF
注:整個內(nèi)核的地址都是從0x8000 0000開始的。如果是x86系列的CPU,那么物理內(nèi)存地址與虛擬地址映射關(guān)系在oeminit.asm中指定。
【CONFIG】類似環(huán)境變量,PB預(yù)設(shè)置了一些配置變量。常用的配置及說明如下:
AUTOSIZE:
格式:AUTOSIZE = OFF | ON
默認(rèn)值為OFF。在config.bib中的MEMORY部分定義了有效的內(nèi)存區(qū)域,其中兩部分RAM、RAMIMAGE分別用于進(jìn)程使用區(qū)域和保存鏡像區(qū)域。如果為ON,romimage.exe在創(chuàng)建nk.bin時將RAM和RAMIMAGE兩部分合并成一個部分,然后從最低地址開始保留RAMIMAGE大小的內(nèi)存,其余都作為RAM使用。
BOOTJUMP:
..........

更多詳情參考:http://www.hzlitai.com.cn/article/ARM9-article/system/1629.html
本文地址:http://m.4huy16.com/thread-54067-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
huangly001 發(fā)表于 2011-3-1 11:51:44
有用的資料,支持一下!
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • Microchip第22屆中國技術(shù)精英年會——采訪篇
  • 電動兩輪車設(shè)計生態(tài)系統(tǒng)
  • Microchip第22屆中國技術(shù)精英年會上海首站開幕
  • 常見深度學(xué)習(xí)模型介紹及應(yīng)用培訓(xùn)教程
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表