VxWorks的启动过程

根据上述所采用的BOOTROM的不同,VxWorks的启动过程会有所不同,下面主要介绍一下使用可加

VxWorks映像的启动过程。此时,从目标板上电复位到启动用户定义的任务的整个流程如下:

bootrom 和VxWorks image 生成在都需要编译BSP文件,他们区别在于bootrom是调用上图前两部分;而vxworks image 是实现图最后部分(即调用sysInit, userInit, usrroot函数)


Boot中几个关键宏定义:

#define LOCAL_MEM_LOCAL_ADRS 0x00000000

#define ROM_TEXT_ADRS 0x100  ROM Boot程序执行起始地址( romStart( ) )

#define ROM_OFFSET(adr) (((UINT)adr - (UINT)romInit) + ROM_TEXT_ADRS)

define BOOT_LINE_OFFSET 0x1200

#define BOOT_LINE_ADRS ((char *) (LOCAL_MEM_LOCAL_ADRS+BOOT_LINE_OFFSET))

                    ldFileFromMch,从该起始地址读取加载要用到的tBootParams

define RAM_LOW_ADRS 0x10000  boot Rom将控制权交给VxWorks的起始进入点( usrInit( ) ). boot启动之后,将系统映像从Flashcopy或解压到RAM_LOW_ADRS地址处,并跳转到该地址执行

define VERSION_START_ADRS 0x10000 版本加载完后的执行入口地址.

# define FREE_RAM_ADRS  (end)      start right after bss of VxWorks

# define FREE_MEM_START_ADRS (FREE_RAM_ADRS + WDB_POOL_SIZE)

bootRom中的pMemPoolStart

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值