VxWorks 基本启动方式 分类: vxWorks 2014-03-14 08:46 269人阅读 评论(0) 收藏

VxWorks 基本启动方式
    按VxWorks内核的下载形式,VxWorks启动总体上分为两种方式:下载型和ROM 型。
    @下载型启动方式:bootrom+VxWorks。此时bootrom 被烧入ROM 中,而VxWorks内核映像通过串口或者网口下载到系统RAM中。
    @ROM型启动方式:VxWorks直接从ROM中运行,不借助于bootrom引导程序。此时VxWorks内核映像被烧入ROM 中,无bootrom程序。
    对于不同的启动方式,VxWorks操作系统内核映像的组成也略有不同。
    bootrom引导程序一般称为VxWorks boot Image。该程序由如下文件创建而成:romInit.s、bootInit.c、sysALib.s、sysLib.c、bootConfig.c、设备驱动程序。
    虽然bootrom 中包含sysALib.s 文件,但是并未使用其中定义的任何函数,这与ROM形式的VxWorks内核映像类似
    VxWorks内核映像一般被称为VxWorks Application Image。VxWorks内核映像是系统启动后实际运行的程序(操作系统本身)。对于下载形式的VxWorks 内核映像,由于需要对硬件环境进行重新初始化(即不依赖于romInit 函数所做的初始化工作),所以最先需要运行sysInit函数进行重新初始化,这些初始化工作与romInit函数基本相同,但是不再需要对内存控制器进行重新初始化,这是sysInit 区别于romInit 函数之处。sysInit 最后跳转到usrInit 函数。而对于ROM方式直接运行的VxWorks内核映像,由于romInit.s函数此时是作为内核映像的一部分,所以就省去了对sysInit函数的调用。下载型和ROM型在VxWorks内核文件的构成上有一些差别。
    @下载形式的VxWorks内核映像组成:sysALib.s、sysLib.c、usrConfig.c、设备驱动程序文件。
    @ROM 形式的VxWorks 内核映像组成:romInit.s、bootInit.c、sysALib.s、sysLib.c、usrConfig.c、设备驱动程序文件。
    虽然ROM 形式的VxWorks 内核映像并未使用sysALib.s 文件中的函数(sysInit),但是该文件仍然作为一部分存在于该VxWorks内核映像中。当然用户可以修改defs.bsp 文件中的MACH_DEP 宏定义,将sysALib.o 从如下形式定义中去掉即可。
    MACH_DEP = sysALib.o sysLib.o $(MACH_EXTRA) $(ADDED_MODULES)

版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2014-03-14 08:46  毛毛虫的薄刻  阅读(173)  评论(0编辑  收藏  举报