zoukankan      html  css  js  c++  java
  • VxWorks镜像简介 分类: vxWorks 2014-03-14 08:44 280人阅读 评论(0) 收藏

    VxWorks镜像可分为三类:
      可加载型VxWorks镜像:存储在开发机上,运行在板上RAM中
      基于ROM的VxWorks镜像:存储在板上ROM,运行在板上RAM中
      ROM驻留的VxWorks镜像:存储在板上ROM,运行在板上ROM中

    一、可加载的VxWorks镜像
        可加载的VxWorks镜像存储在开发机上,运行在RAM中。
        在开发的初期阶段,可以根据需要添加或删除一些VxWorks组件,生成可加载的VxWorks镜像,存放在开发主机的某个目录下,便于调试。
         Bootrom中有起始引导程序(BootStrap Programs)和引导程序(ROM Boot Programs)。
         目标板上电后,由烧在BootRom中的BootStrap Programs将ROM Boot Programs拷贝到RAM的高端地地RAM_HIGH_ADRS处,并跳转至该地址ROM Boot Programs。
         ROM Boot Programs使用配置好所选的加载方式(缺省为网络方式),将指定的主机目录下的可加载的VxWorks镜像下载到目标板的RAM地址RAM_LOW_ADRS处,并跳转到此处执行。如下图所示

    图1中所示的各地址含义为:
    1. LOCAL_MEM_LOCAL_ADRS是RAM的起始地址
    2. RAM_LOW_ADRS是VxWorks的加载点,也是VxWorks代码段的起始位置
    3. FREE_RAM_ADRS是VxWorks镜像的结束点。通常也是系统内存池和目标服务器内存池的起始地址
    4. RAM_HIGH_ADRS是ROM引导程序的加载点。它也是ROM引导程序(除驻留ROM引导程序之外)的代码段的起始位置,或驻留ROM引导程序数据段的起始位置。


    二、基于ROM的VxWorks镜像
       基于ROM的VxWorks镜像存储在板上ROM中,运行在RAM中。
       目标板上电后,首先运行Bootrom中的引导搬移程序,将整个VxWorks镜像从ROM拷贝到RAM地址RAM_LOW_ADRS处,并跳转到此处执行。如图2所示


    该镜像根据是否被压缩又可分为:
      1.基于ROM的未压缩的VxWorks镜像,可直接从ROM拷贝到RAM中
      2.基于ROM的压缩的VxWorks镜像,这种镜像主要是为了节约Bootrom空间,在从ROM拷贝到RAM的过程中需要解压缩,因此与上述未压缩的镜像相比,它的引导过程相对较慢,但两者在RAM中的运行速度是一样的。


    三、驻留ROM的VxWorks镜像
        驻留ROM的VxWorks镜像存储在板上ROM中,运行在板上ROM中。
        目标板上电后,首先运行Bootrom中的引导搬移程序,但仅将VxWorks镜像的数据段和BSS段拷贝到RAM地址RAM_LOW_ADRS处,镜像的代码段仍旧留在ROM中,从ROM中开始执行。
        这种镜像的优点是具有最快的引导速度,占用最少的RAM空间,适用于RAM空间有限的目标板。但是由于该镜像在ROM中运行,运行速度在三种镜像中是最慢的。如图3所示。

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

  • 相关阅读:
    dos常用命令
    组合封装知识点
    继承与派生知识点
    继承与派生
    面向对象知识点
    面向对象
    Day 84 DRF的分页和过滤
    Day80 使用第三方(腾讯云)短信验证码接口
    Day 79 xadmin后台管理/Git仓库
    Day 77 三大认证组件
  • 原文地址:https://www.cnblogs.com/mao0504/p/4706648.html
Copyright © 2011-2022 走看看