ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:268.12KB ,
资源ID:12853219      下载积分:8 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-12853219.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(嵌入式操作系统启动综合流程.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

嵌入式操作系统启动综合流程.docx

1、嵌入式操作系统启动综合流程1什么是BSP:1.在通电后,初始化硬件(bootrom)2.支持VxWorks和硬件驱动通信(Image底层驱动)3.本质上是硬件驱动、初始化合集;2研究BSP内容:1.系统image生成和image种类2.imagedownload下载过程3.系统启动顺序和过程4.调试环境配备及远端调试方式和办法5.相应BSP设立文献修改(网络,串口.)6.BSP各文献构成和作用. 7.要对系统底层驱动清晰,也就是对CPU及有关硬件有所理解.重要是32微解决器(上电启动过程,download image方式办法,读写ROM,地址空间分派,MMU,寄存器,中断定义,.).参照硬件资

2、料,多读某些源码会有所协助.3BSP重要文献目录构成及重要文献作用:3.1目录target/config/All:这个目录下文献是所有BSP文献共享,不是特别需要不要更改里面任何文献.configAll.h:缺省定义了所有VxWorks设立.如果不用缺省设立,可在BSP目录下config.h文献中用#define或#undef方式来更改设立.bootInit.c:在romInit.s后,完毕Boot ROM第二步初始化.程序从romInit.s中romInit()跳到这个文献中romStart().来执行必要解压和ROM image放置.bootConfig.c:完毕Boot ROM imag

3、e初始化和控制.usrConfig.c:VxWorks image初始化代码.3.2目录target/config/comps/src:涉及系统核心components,重要由target/config/All中usrConfig.c中函数调用3.3目录target/config/bspname:包括系统或硬件有关BSP文献.Makefile 某些命令行控制images生成,参见 BSP设立某些及生成下载READMEBSP发布纪录,版本,总文档config.h涉及所有涉及CPU主板设立及定义(includes,definations),参见 BSP设立文献及生成下载configNet.h网络驱

4、动重要设立文献,重要对END驱动设立.romInit.s汇编语言文献,是VxWorks Boot ROM和ROM based image入口,参见 系统启动某些sysALib.s汇编语言文献,程序员可以把自己汇编函数放在这个文献里,在上层调用.VxWorks image入口点_sysInit在这个文献里,是在RAM中执行第一种函数.sysLib.c包括某些系统有关函数例程,提供了一种board-level接口,VxWorks和应用程序可以以system-indepent方式生成.这个文献还能包括目录target/config/comps/src驱动.sysScsi.c可选文献用于Scsi设备设

5、立和初始化.sysSerial.c可选文献用于所有串口设立和初始化.bootrom.hexASIC文献包括VxWorks Boot ROM代码VxWorks运营在目的机上,完整,连结后VxWorks二进制文献.VxWorks.sym完全,连结后带有符号表VxWorks二进制文献VxWorks.st完全,连结后,standalone,带有符号表VxWorks二进制文献4VxWorks Image4.1VxWorks images consist of:Text segment-executable instruction. Data segment-Initilized global and s

6、tatic varibles. BSS. 4.2分类和工作机理:Bootrom不是VxWorks Image,不参加讨论它本质上是一段Boot program,至少系统初始化,重要用于启动装载VxWorks image.普通有压缩和不压缩两种形式,如bootrom和boot_uncmp.与VxWorks image区别在于一种Bootrom调用bootConfig.c,而VxWorks调用usrConfig.c. VxWorks 本质上分为两大类:1Vxworks分为两大类: 1)Uploaded images(通过网口、串口、硬盘、软盘、DOC、ROM中加载到RAM中执行)vxWorks -

7、 basic Tornado,shell 和 symbol table 在主机端vxWorks.st(文献很大)- 独立 image,包括shell和 symbol table在目的板运营2)ROM based images(直接烧入ROMVxWorks):VxWorks_Rom类Vxworks又分了两类:1)驻留resident 2)不住留1.不住留 ROM Based VxWorks Image2.驻留VxWorks_rom_resident2说再详细点:1)可下载Vxworks image2)ROM中烧制Image1.vxWorks_rom - Tornado in ROM,非压缩,在

8、RAM 中运营2.vxWorks.res_rom_nosym - Tornado in ROM,非压缩,在 ROM 中运营3.vxWorks.st_rom - Stand-alone in ROM,压缩,RAM 中运营4.vxWorks.res_rom - Stand-alone in ROM,非压缩,ROM 中运营3VxWorks在存储介质中存储方式5启动5.1启动概述1Bootrom 启动至少系统初始化,重要用于启动装载VxWorks image.普通有压缩和不压缩两种形式,如bootrom和boot_uncmp.与VxWorks image区别在于一种Bootrom调用bootConfi

9、g.c,而VxWorks调用usrConfig.c.文献romInit.s中romInit()-文献bootInit.c中romStart()-文献bootConfig.c中usrInit()-sysHwInit()-usrKernelInit()-KernelInit(usrRoot,.) 其中 /target/config/all/bootConfig.c是Boot ROM设立模块.用于通过网络加载VxWorks image.usrRoot()-bootCmdLoop(void)命令行选取,或autobooting-bootLoad(pLine,&entry)加载模块到内存(网络,TFFS

10、,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 actuall

11、y 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 kernelKernelInit(usrRoot,.)- Initializes and starts the kernel. Defines system memory partition. Activates a task tUsr

12、Root to complete initalization. Unlocks inierrupts. Uses usrInit()stack. usrRoot() 初始化内存分区表(memory partition library) 初始化系统系统时钟(system clock) 初始化输入输出系统(I/O system)-可选 Create devices-可选 设立网络(Configure network)-可选 激活WDB目的通信(Activate WDB agent)-可选 调用程序(Activate application) 2VxWorks启动1)Loadable VxWorks

13、启动a)使用Bootrom进行最小系统起动b)加载程序段、数据段、BBS段c)跳转到RAM中运营VxWorks启动(详见下面)2)VxWork_ROMVxWorks启动1.ROM中运营VxWorks启动VxWorks在ROM中运营,即写入ROM中VxWorks是非压缩,不需要解压,系统直接跳到ROM首地址,运营VxWorks.注意:ROM运营VxWorks并不支持所有主扳,应以主扳手册为准.文献romInit.s中romInit()-文献bootInit.c中romStart()-文献usrConfig.c中usrInit()-sysHwInit()-usrKernelInit()-Kerne

14、lInit(usrRoot,.) VxWorks在ROM中运营重要是为了节约RAM空间,以便应用程序有更大空间运营.只把VxWorks imagedata段复制到RAMLOCAL_LOW_ADRS,text某些留在ROM并在ROM中执行.ROM中运营VxWorks缺陷是运营速度慢.2.RAM中运营VxWorks启动VxWorks在RAM中运营,即写入ROM中Boot或VxWorks Image是压缩,需要先解压copy所有text和data到RAMLOCAL_LOW_ADRS中,下面sysInit()重要是初始化RAM用,系统直接跳到RAM首地址,运营VxWorksusrInit()前面不压缩

15、,即romInit(),romStart()不能压缩.文献romInit.s中romInit()-文献bootInit.c中romStart()-sysaLib.s中sysInit()-文献usrConfig.c中usrInit()-sysHwInit()-usrKernelInit()-KernelInit(usrRoot,.) RAM运营Boot或VxWorks imagetext段或data段会从ROM复制到RAM,在RAM中运营.其中usrRoot()是VxWorks启动第一种任务,由它来初始化 driver,network等描述:romInit.s first execute in flash,minal initiliz,then jump to romStart. romStart() 开始装载和解压image到RAM,sysaLib.s是在RAM中执行第一种函数.

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2