VxWorks启动流程

简介: 镜像种类不同,VxWorks的启动过程会有所不同。<br> 我们项目中使用的是加载型VxWorks镜像<br><br><a target="_blank" href="http://blog.chinaunix.net/attachment/201106/23/24148050_1308798210jJV3.jpg"><img border="0" alt="" src="http://
镜像种类不同,VxWorks的启动过程会有所不同。
我们项目中使用的是加载型VxWorks镜像

  



函数

函数功能

所在文件

bootTask()

(a)    通过createBootLineFromFlash()从FLASH_ADRS中读出配置信息,组装bootline字符串到BOOT_LINE_ADRS

(b)    调用autoboot()

bootMain.c

autoboot()

延迟5s,等待用户输入

超时后调用sysInit()

bootMain.c

sysInit()

(a)    锁住中断

(b)    禁用缓冲

(c)    用缺省值初始化系统中断表(仅i960)

(d)    用缺省值初始化系统错误表(仅i960)

(e)    初始化处理器寄存器到一缺省值

(f)     使回溯失效

(g)    清除所有悬置中断

激活usrInit(),指明启动类型

sysALib.s

usrInit()

(a)    调用sysStart() 对bss清零

(b)    调用cacheLibInit() 支持cache

(c)    调用excVecInit(),初始化所有系统和缺省中断向量

(d)    调用sysHwInit(), usrCacheEnable()

(e)    调用usrKernelInit()

prjConfig.c

usrKernelInit()

依次调用classLibInit(),taskLibInit()qInit(),workQInit(),

kernelInit()

Target\config

\comps\src

\usrKernel.c

kernelInit()

初始化并启动内核。

(a)激活intLockLevelSet();

(b)从内存池顶部创建根堆栈和TCB

(c)调用taskInit(), taskActivate(),用于usrRoot();

(d)调用usrRoot()

kernelLib.h

usrRoot()

依次调用

usrKernelCoreInit(),memPartLibInit(),memInit(),

usrMmuInit(),sysClkInit(),

usrIosCoreInit(),usrKernelExtrsInit(),usrIo***traInit(),

usrNetworkInit(),selectInit(),usrToolsInit(),

cplusDemanglerInit(),usrAppInit()

prjConfig.c

usrAppInit()

依次调用 startWdTask(), appMain()

usrAppInit.c


相关文章
Vxworks 6.6系列下载地址
Vxworks 6.6系列下载地址: <br> ---------------------------------- <br><a target="_blank" href="ftp://ftp.windriver.speedera.net/ftp.windriver/internal/eval/vxworks-6.6/CDR-R133467.1-1-00.zip">ftp://ftp.
7270 0
|
网络协议 网络安全 数据安全/隐私保护
windocs连接麒麟桌面---vnc软件
windocs连接麒麟桌面---vnc软件
389 0
|
监控 Linux 数据安全/隐私保护
IPMI介绍
IPMI简要介绍
7733 0
|
物联网 测试技术 Android开发
蓝牙BLE传输性能及延迟分析
BLE传输性能主要受以下几个因素影响:操作类型,Connection Interval,每个Connection Event内发送的帧数、每一帧数据的长度。具体参见如下链接: https://en.wikipedia.
4131 0
|
Java Maven 数据安全/隐私保护
Maven - 发布JAR包到Maven远程中央仓库(五)
Maven - 发布JAR包到Maven远程中央仓库(五)
1131 0
Maven - 发布JAR包到Maven远程中央仓库(五)
|
8月前
|
人工智能 自然语言处理 并行计算
Kokoro-TTS:超轻量级文本转语音模型,支持生成多种语言和多种语音风格
Kokoro-TTS 是一款轻量级文本转语音模型,支持多语言和多语音风格生成,具备实时处理能力和低资源占用,适用于多种应用场景。
1184 5
Kokoro-TTS:超轻量级文本转语音模型,支持生成多种语言和多种语音风格
|
Kubernetes Python 容器
[python]使用diagrams绘制架构图
[python]使用diagrams绘制架构图
324 3
可靠性(MTTF,MTTR,MTBF以及系统可靠性的计算,串联,并联,模冗余系统)
可靠性(MTTF,MTTR,MTBF以及系统可靠性的计算,串联,并联,模冗余系统)
1664 1
|
JavaScript 关系型数据库 MySQL
若依框架数据源切换为pg库
若依管理系统切换数据源为pg数据库
1176 1
若依框架数据源切换为pg库
|
数据可视化 算法
Simulink-Simscape仿真环境配置
Simulink-Simscape仿真环境配置
334 1