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)

VxWorks 基本启动方式的更多相关文章

  1. ROM型启动方式概述

    ROM 型启动方式概述 所有的VxWorks 内核映像类型中,只有VxWorks 类型使用的bootrom 引导程序进行启动,此时VxWorks 内核映像放置在主机端,由目标板bootrom 完成Vx ...

  2. Redis的三种启动方式

    转载:http://www.tuicool.com/articles/aQbQ3u Part I. 直接启动 下载 官网下载 安装 tar zxvf redis-2.8.9.tar.gz cd red ...

  3. spring有三种启动方式

    spring有三种启动方式,使用ContextLoaderServlet,ContextLoaderListener和ContextLoaderPlugIn spring3.0及以后版本中已经删除Co ...

  4. android service两种启动方式

    android service的启动方式有以下两种: 1.Context.startService()方式启动,生命周期如下所示,启动时,startService->onCreate()-> ...

  5. Redis的三种启动方式【转】

    Part I. 直接启动 下载 官网下载 安装 tar zxvf redis-2.8.9.tar.gz cd redis-2.8.9 #直接make 编译 make #可使用root用户执行`make ...

  6. android activity的启动方式

    1.Standard正常启动,默认的启动方式,没什么说头 2.SingleTop 意思就是在栈顶只能存在一个相同的activity 不能叠加,如果再A上继续启动A的话,只会调用A的onNewInten ...

  7. android服务之启动方式

    服务有两种启动方式 通过startService方法来启动 通过bindService来开启服务 布局文件 在布局文件中我们定义了四个按键来测试这两种方式来开启服务的不同 <?xml versi ...

  8. Android service介绍和启动方式

    1.Android service的作用: service通常是用来处理一些耗时操作,或后台执行不提供用户交互界面的操作,例如:下载.播放音乐. 2.Android service的生命周期: ser ...

  9. 第一章 Mybtais的两种启动方式

    Mybatis的两种启动方式如下: 1.xml实现: xml的实现方式中,主要是通过手动创建SqlSession,然后调用session.selectOne()方法实现来实现. 首先是创建Config ...

随机推荐

  1. JFinal源码 分析之 Core包分析

    ActionHandler.java 这个类继承了上面 说的Handler类,首先我们 上 几个属性 ,下面几个 属性我们 需要 关心哪些东西 呢?首先 是ActionMapping和RenderMa ...

  2. Linux下查看CPU、内存和硬盘信息命令

    一.查看cpu信息 cat /proc/cpuinfo 相同physical id 的记录是属于同一个CPU的,对应于多核的信息. 二.查看内存的信息 cat /proc/meminfo 三.查看硬盘 ...

  3. HDU 2865 Birthday Toy [Polya 矩阵乘法]

    传送门 题意: 相邻珠子不能相同,旋转等价.$n$个珠子$k$中颜色,求方案数 首先中间珠子$k$种选择,$k--$如果没有相邻不同的限制,就和$POJ\ 2154$一样了$|C(f)|=k^{\#( ...

  4. 通过四个例子理解JavaScript拓展运算符

    原文地址:JavaScript & The spread operator 拓展运算符看起来像什么? 三个点,... 它能做什么? 拓展运算符允许一个表达式在某个地方展开成为多个元素.变量或参 ...

  5. ADO.NET 对数据操作

    public static class SQLHelper { static string connString = ConfigurationManager.ConnectionStrings[&q ...

  6. HTTP入门

    请求报文图解: 请求报文 图片 响应报文图解: 响应报文  

  7. laravel框架学习-缓存,事件

    缓存配置:app/config/cache.php   缓存:     增加缓存项: Cache::put( 'key', 'value', $Cachetime );     在缓存中增加一个不存在 ...

  8. 实现dedecms全站动态浏览 并实现伪静态

    dedecms默认是生成静态文件,如何实现织梦全站动态浏览呢? 织梦全站动态浏览方法 1. 修改首页为动态浏览 后台-生成-更新首页-勾选"仅动态浏览" 2. 修改栏目页为动态浏览 ...

  9. windows下apache服务器开启压缩和网页缓存

    找到配置文件:http.conf apache开启压缩 一.开启配置,去除下面代码前面的#号LoadModule deflate_module modules/mod_deflate.soLoadMo ...

  10. 洛谷P2286 [HNOI2004]宠物收养场【Treap】题解+AC代码

    题目传送门啦~啦~啦~ 题目描述 凡凡开了一间宠物收养场.收养场提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物. 每个领养者都希望领养到自己满意的宠物,凡凡根据领养者的要求通过他自己发明的 ...