bootrom的构成

简介: <p align="left"><span style="font-family:Arial; font-size:12px">bootrom的构成</span></p> <p align="left"><span style="font-family:Arial; font-size:12px">        在开发阶段,VxWorks 操作系统大多采用bootrom+ VxWork

bootrom的构成

        在开发阶段,VxWorks 操作系统大多采用bootrom+ VxWorks 方式启动,即下载型方式进行。一方面,由于VxWorks本身调试的需要,另一方面,bootrom相比VxWorks内核较小,可以较快地烧录到平台ROM 中。在下载型方式中,bootrom的主要任务就是从主机端(相对运行VxWorks 的目标板而言)通过串口或者网口将VxWorks内核映像载入目标板RAM中,而后跳转到VxWorks 内核映像入口处执行。bootrom 完成的所有工作基本上都是为了下载VxWorks内核映像做准备。

        bootrom在构成上基本类似于VxWorks内核本身,即二者使用同一套函数,但是也有一个较大的区别:bootrom使用bootConfig.c文件,而VxWorks内核本身则使用usrConfig.c文件。在下载型启动方式下使用的VxWorks 内核映像由如下文件构成:sysALib.s、sysLib.c、usrConfig.c 和设备驱动程序文件。bootrom 映像则由如下文件构成:romInit.s、bootInit.c、sysALib.s、sysLib.c、bootConfig.c和设备驱动程序。

        bootrom 映像中虽然包含sysALib.s 文件代码,但是其并不使用其中定义的任何函数。

        sysLib.c 以及设备驱动程序都是相同的,在下载启动方式下,VxWorks 内核映像不包含romInit.s和bootInit.c文件。但是一旦处于产品阶段,当采用ROM 启动方式时,VxWorks 内核映像构成将基本类似于bootrom映像构成,即为:romInit.s、bootInit.c、sysALib.s、sysLib.c、usrConfig.c、设备驱动程序文件。

        ROM启动方式下,sysALib.s文件没有使用,但是仍然包含在内核映像中,可以修改系统文件中的相关宏定义,去掉该文件,但如果需要下载型VxWorks 内核映像,还是要加上sysALib.s文件,故建议一直包含该文件。其中romInit.s、bootInit.c、sysLib.c、设备驱动程序与bootrom 中使用的都是同一套文件,然而无论VxWorks映像是基于下载方式的,还是ROM方式的,其总是使用usrConfig.c文件,而bootrom则总是使用bootConfig.c 文件。这两个文件虽然定义有相同的函数(usrInit 和usrRoot),但基本实现却大不相同,bootConfig.c 也进行一些初始化,如当使用网口下载VxWorks 内核映像时,其需要进行网口初始化,但是正如上文所述,bootConfig.c中完成的所有工作都是为了能够从外部主机上下载真正的VxWorks操作系统映像,其本身不具有VxWorks 操作系统功能部件;而usrConfig.c 则不然,其需要完成维持VxWorks 操作系统正常运行时所需的所有组件的初始化工作,所以usrConfig.c才是真正进行VxWorks操作系统的启动工作的。

相关文章
|
12月前
|
存储 算法 NoSQL
接口限流
防止用户恶意刷新接口, 防止对接口的恶意请求,减少不必要的资源浪费,从而保证服务可用。如果不做限流,任由某个用户以非正常方式高频率访问的话,会直接将网络流量、服务器资源挤占完,从而影响正常对外提供服务,造成服务不可用。
131 1
|
5月前
|
存储 缓存 C语言
TCM、ITCM、DTCM
TCM、ITCM、DTCM
359 0
|
5月前
|
安全 算法 数据可视化
认识Glitch到攻击BootROM
认识Glitch到攻击BootROM
130 0
|
5月前
|
SQL 开发框架 安全
超市商品信息管理系统设计与实现(论文+源码)_kaic
超市商品信息管理系统设计与实现(论文+源码)_kaic
|
5G 调度 芯片
5G 帧结构 |带你读《5G空口特性与关键技术》之七
虽然在较高的载波频率下通常不使用较小的子载波间隔,但是参数集可以独立于频段进行选择。不同子载波间隔可用于不同的场景下。如对于室外宏覆盖和微小区,可以采用 30kHz 子载波间隔;而室内站则可以采用 60kHz 子载波间隔;对于毫米波,则可以采用更大的子载波间隔,如 120kHz。
11218 2
5G 帧结构 |带你读《5G空口特性与关键技术》之七
|
存储 自然语言处理 物联网
世界的参数倒影:为何GPT通过Next Token Prediction可以产生智能(4)
世界的参数倒影:为何GPT通过Next Token Prediction可以产生智能
348 0
|
存储 Linux 数据安全/隐私保护
ZYNQ - 嵌入式Linux开发 -10- ZYNQ启动流程分析
ZYNQ - 嵌入式Linux开发 -10- ZYNQ启动流程分析
940 0
ZYNQ - 嵌入式Linux开发 -10- ZYNQ启动流程分析
|
存储 网络性能优化 Go
IMS基于策略的QoS机制
IMS体系架构基于IP网络实现了会话控制与承载控制的分离。在IMS的呼叫建立流程中,信令与媒体流的传递沿不同路径方式进行。信令流在经过SGSN、GGSN节点后就会与媒体流分开,信令消息将在CSCF间根据用户配置进行传送,媒体消息则在信令选择的路径上传送。
|
前端开发 定位技术 计算机视觉
3D激光SLAM:ALOAM---Ceres 优化部分及代码分析
通常一个优化器会帮助解决优化问题中大部分内容,但是残差的计算以及残差对优化变量的雅克比矩阵通常需要用户自己定义,而雅克比矩阵通常比较复杂,因此有的优化库如G2O,GTSAM会预先定义好一些常见的优化问题,所涉及的残差及雅克比计算方式,但是并不能覆盖所有场景,一旦有些问题不是优化器事先建模好的问题,那就需要用户自己去定义残差和雅克比矩阵的计算方式,这个会非常麻烦,而且容易出错.ceres通过引用自动求导的功能,无论什么优化问题,用户只需要定义残差的计算方式,自动求导功能会帮助用户计算对应的雅克比矩阵来实现优化问题的求解.
3D激光SLAM:ALOAM---Ceres 优化部分及代码分析
|
Web App开发 人工智能 安全