BSP工程中的bib文件简介

本文介绍了 WinCE 中 Binary Image Builder (BIB) 文件的作用及其结构。BIB 文件用于定义 WinCE 映像的内存布局及包含的文件模块。文章详细讲解了 MEMORY、CONFIG、MODULES 和 FILES 四大项的具体内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

WinCE 中 使用的一个重要的文件就是 BIB 文 件,全称 Binary Image Builder File 。 在 WinCE 的编译过 程中会用到 BIB 文 件,应该是在最后的 Makeimg 阶 段。所有的 BIB 文件 会被合并成 CE.bib 文 件,然后 Romimage.exe 会 根据 BIB 文件中的描 述来决定哪些文件最终被包含到 WinCE image 中。 当然, BIB 文件还决 定了 WinCE 设备内 存的分配,其中定义了 WinCE image 占 用哪块内存, Framebuffer 占 用哪块内存等。

 

BIB 文件中分为 4 大项: MEMORY 项, CONFIG 项, MODULES 项 和 FILES 项。 下面分别作个解释:

 

MEMORY : 定义了内存分配的相关设置,一般在 BSP 中的 config.bib 文件中。

CONFIG : 在最后的 Makeimg 阶段,为 Romimage.exe 提供一些生成 WinCE image 的配置属性。该项是可选的,一般也在 BSP 中的 config.bib 文件中定义。

MODULES : 定义了一些会被打包到 WinCE image 中 的模块或者文件,比如 dllexe 等。这些文件会被 Romimage.exe 标记为加载到 RAM 中或者 XIP 。我们可以在这里添加自己的 WinCE 应用程序或者模块,但是不要添加 Managed Binaries ,一般指 .NET 的程序。

FILES : 定义了一些操作系统会用到的其他的文件,比如字体文件,图片等。这些文 件也会在 WinCE 运 行的时候被加载到 RAM 中。

 

下面会详细介绍上面的 4 大项:

 

1. MEMORY

一 般都在 config.bib 文 件中定义,开头会有 MEMORY 的 字样。这里定义了为 WinCE image 以 及其他模块预留的 RAM , 同时也定义了 WinCE 可 以使用的 RAM 。具体 格式如下:

 

MEMORY

    NAME Start Address      Memory Size     Type

 

NAME : 该内存区域的名字,必须是唯一的。

Start Address : 该内存区域的起始地址,用十六进制表示。

Memory Size : 该内存区域的大小,用十六进制表示。

Type : 内存区域的类型。包涵的多种类型如下。

 

 

2CONFIG

一 般在 config.bib 文 件中定义,定义了一些额外的配置参数,其中一些对于 WinCE image 来说也很重要。具体格式如下;

 

CONFIG

             ITEM=Parameter

 

 

3MODULES 项和 FILES

该 项列出了所有被包含在 WinCE image 中 的模块以及文件,以及这些模块和文件以什么方式被加载到内存中。具体格式如下:

 

MODULES

              Name     Path                     Memory               Type

 

Name : 模块的名字,比如一个 dll 或者 exe 文件的文件名。

Path : 路径,一般都是 WinCE 的工程的 Release 目录。

Memory : 指定该模块被放在哪个区域,一般都是 NK 区域。

Type : 定义了文件的类型。具体如下:

 

 

一 般 FILES 项的 Type 只支持 SHND 几个类型,而 MODULES 项的 Type 是都支持的。

 

举个例子吧:

    INIT.EXE           %_WINCEROOT%/RELEASE/INIT.EXE        NK SH

    MYDLL.DLL       %_WINCEROOT%/RELEASE/MYDLL.DLL     NK SHC

 

对 于 BIB 文件来说同样 支持“条件编译”,我们可以通过设置环境变量来选择性地将某些模块打包到 WinCE image 中。一般在 BSP 中,对于一些驱动模块的环境变量我们 IF 来进行条件判断。而对于 WinCE 的系统模块来说,一般都是 SYSGEN 变量,应该使用 @CESYSGEN IF 来判断。

 

我 们在 BSP 的开发中最 常见的主要就是 eboot.bibconfig.bibplatform.bibproject.bib 。 下面简单介绍一下:

 

project.bib : 该文件主要自创建的 WinCE 工程中所需的一些文件。

platform.bib : 该文件包含了和硬件平台相关的文件,主要以驱动程序为主。

config.bib : 该文件描述了 WinCE 系统的内存的配置。

eboot.bib : 该 文件描述了 WinCEeboot 的内存的配置。

 

还 有其他的一些 bib 文 件,在 WinCE 系统 编译后都会背拷贝到工程的 release 目 录下面。比如 common.bibie.bib 等。这些文件列出了 WinCE 的组件相关的文件,根据用户订制的系统,会被选择 性的打包到 WinCE image 中。

为了您的安全,请只打开来 源可靠的网址

打开网站     取消

来自: http://hi.baidu.com/taoliwen/blog/item/154bc0f94407ce1c6c22eb54.html c

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值