Revised as of 23 November 2020
嵌入式操作系统启动流程
什么是BSP:
在通电后,初始化硬件(bootrom)
支持VxWorks和硬件驱动通信(Image的底层驱动)
本质ge
驻留的VxWorks_rom_resident
说的再具体点:
可下载的Vxworks image
ROM中烧制的Image
vxWorks_rom - Tornado in ROM,非压缩, 在 RAM 中运行
- Tornado in ROM, 非压缩,在 ROM 中运行
- Stand-alone in ROM, 压缩, RAM 中运行
- Stand-alone in ROM, 非压缩, ROM 中运行
VxWorks在存储介质中的存放方式
启动
启动概述
Bootrom 的启动
最少的系统初始化,主要用于启动装载VxWorks , image的区别在于一个Bootrom调用,而VxWorks调用.
文件中的romInit()---->文件中的romStart()---->文件中的usrInit()----->sysHwInit()----->usrKernelInit()----->KernelInit(usrRoot,...)
其中 /target/config/all/是Boot image.
usrRoot()---->bootCmdLoop(void)命令行选择,或autobooting----->bootLoad(pLine, &entry)加载模块到内存(网络,TFFS,TSFS...)----->netifAttach()---->go(entry)----->(entry)()从入口开始执行,不返回.
各个函数的主要作用
romInit()-----power up,disable interrupt,put boot type on the stack,clears caches.
romStart()-----load Image Segments into RAM.
usrInit()-----Interrupt lock out,save imformation about boot type,handle all the Initialization before the kernel is actually started,then starts the kernel execution to create an initial task usrRoot().This task completes the start up.
sysHwInit()-----Interrup locked,Initializes hardware,registers,activation kernel
KernelInit(usrRoot,...)-----
Initializes and starts the kernel.
Defines system memory partition
嵌入式操作系统启动流程 来自淘豆网m.daumloan.com转载请标明出处.