Boot.bib与config.bib

.bib文件是用来指导WinCE的编译系统产生可执行二进制文件的,其中使用的地址都是虚拟地址。

BOOT.BIB

先来看boot.bib。boot.bib用来设置Eboot程序中的虚拟内存分配。

 

;****************************************************************************** ; TITLE: BOOT.BIB ; ; Ethernet Boot Loader Source Module ;****************************************************************************** MEMORY ; Name Start Size Type ; ------- -------- -------- ---- PTS 8c000000 00020000 RESERVED DRV_GLB 8c020000 00001000 RESERVED BIN_FS 8c021000 00005000 RESERVED RAM 8c026000 00006000 RAM STACK 8c02c000 00004000 RESERVED EBOOT 8c038000 00020000 RAMIMAGE ; 16 MB area used to cache nk.bin while programming boot media. ; TBD: we may need to adjust to 01400000 (20 MB) to cache PPC 2003. FLSCACHE 8D000000 01000000 RESERVED CONFIG COMPRESSION=OFF PROFILE=OFF KERNELFIXUPS=ON SRE=ON ROMSTART=8c038000 ROMWIDTH=32

 

命名为EBOOT的起始地址为0x8c038000的RAM区域用来存放Eboot镜像(即Nboot将Eboot.nb0复制到起始地址为0x8C038000的RAM区域),大小为128KB。

 

命名为PTS的起始地址为0x8c000000的RAM区域用来存放页表(地址转换表,包含g_oalAddressTable),大小为128KB。

 

 

CONFIG.BIB

再看config.bib。config.bib用来设置WinCE系统的虚拟内存分配。

 

; NK name #define NKNAME NK ; NK Start address #define NKSTART 8C200000 #define NKLEN 01D00000 #define RAMSTART 8E000000 #define RAMLEN 01F00000 $(NKNAME) $(NKSTART) $(NKLEN) RAMIMAGE RAM $(RAMSTART) $(RAMLEN) RAM ; NK 8C200000 01D00000 RAMIMAGE ; RAM 8E000000 01F00000 RAM ; Common RAM areas AUD_DMA 8c002000 00002000 RESERVED DRV_GLB 8c010000 00010000 RESERVED DBGSER_DMA 8c022000 00002000 RESERVED SER_DMA 8c024000 00002000 RESERVED IR_DMA 8c026000 00002000 RESERVED SD_DMA 8c028000 00008000 RESERVED EDBG 8c030000 00020000 RESERVED CPXIPCHAIN 8c050000 00008000 RESERVED SLEEP_BUFF 8c058000 00004000 RESERVED DISPLAY 8c100000 00100000 RESERVED

RESERVE属性表明该片内存是BSP自己使用的,系统不必关心其用途;RAMIMAGE说明它是一片存放OS IMAGE的内存;而RAM则表示些片内存为RAM,系统可以在其中分配空间,运行程序。

你可能感兴趣的:(c,image,cache,Module,OS,WinCE)