嵌入式操作系统启动流程_第1页
嵌入式操作系统启动流程_第2页
嵌入式操作系统启动流程_第3页
嵌入式操作系统启动流程_第4页
嵌入式操作系统启动流程_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、什么是BSP: 在通电后,初始化硬件(bootrom)支持VxWorks和硬件驱动通信(Image的底层驱动)本质上是硬硬件驱动动、初始始化的合合集;研究BSPP内容: 系统imaage的的生成和和imaage的的种类imagee的doownlloadd下载过过程系统的启动动顺序和和过程调试环境的的配置及及远端调调试的方方式和方方法相应BSPP设置文文件的修修改(网网络,串串口.)BSP各文文件的组组成和作作用. 要对系统底底层驱动动清楚,也就是是对CPPU及相相关的硬硬件有所所了解.主要是是32微微处理器器(上电电启动过过程, dowwnlooad imaage的的方式方方法,读读写ROOM

2、,地地址空间间分配,MMUU,寄存存器,中中断定义义,.).参参照硬件件资料,多读一一些源码码会有所所帮助.BSP主要要文件目目录的组组成及主主要文件件的作用用: 目录tarrgett/coonfiig/AAll: 这个目录下下的文件件是所有有BSPP文件共共享的,不是特特别需要要不要更更改里面面的任何何文件.confiigAlll.hh: 缺省定义了了所有VVxWoorkss的设置置.如果果不用缺缺省的设设置,可可在BSSP目录录下的cconffig.h文件件中用#deffinee或#uundeef方式式来更改改设置.bootIInitt.c: 在romIInitt.s后后,完成成Booot

3、 RROM的的第二步步初始化化.程序序从roomInnit.s中的的rommIniit()跳到这这个文件件中的rromSStarrt().来执执行必要要的解压压和ROOM iimagge的放放置.bootCConffig.c: 完成BBoott ROOM iimagge的初初始化和和控制.usrCoonfiig.cc: VVxWoorkss immagee的初始始化代码码.目录tarrgett/coonfiig/ccompps/ssrc: 涉及系统核核心的ccompponeentss,主要要由taargeet/cconffig/Alll中ussrCoonfiig.cc中函数数调用目录tarrg

4、ett/coonfiig/bbspnnamee: 包含系统或或硬件相相关的BBSP文文件.Makeffilee 一些命令行行控制iimagges的的生成,参见 HYPERLINK /mypage/example/config.htm BSPP设置部部分及生生成下载载READMMEBSP发布布纪录,版本,总的文文档confiig.hh包括所有涉涉及CPPU主板板的设置置及定义义(inncluudess,deefinnatiionss),参参见 HYPERLINK /mypage/example/config.htm BBSP设设置文件件及生成成下载confiigNeet.hh网络驱动的的主要设设

5、置文件件,主要要对ENND驱动动设置.romInnit.s汇编语言文文件,是是VxWWorkks BBoott ROOM和RROM bassed imaage的的入口,参见 HYPERLINK /mypage/sourcecode.htm#INIT l INIT 系统启启动部分分sysALLib.s汇编语言文文件,程程序员可可以把自自己的汇汇编函数数放在这这个文件件里,在在上层调调用.VVxWoorkss immagee的入口口点_ssysIInitt在这个个文件里里,是在在RAMM中执行行的第一一个函数数.sysLiib.cc包含一些系系统相关关的函数数例程,提供了了一个bboarrd-ll

6、eveel的接接口,VVxWoorkss和应用用程序可可以以ssysttem-inddepeent的的方式生生成.这这个文件件还能包包含目录录tarrgett/coonfiig/ccompps/ssrc的的驱动.sysSccsi.c可选文件用用于Sccsi设设备设置置和初始始化.sysSeeriaal.cc可选文件用用于所有有的串口口设置和和初始化化.bootrrom.hexxASIC文文件包含含VxWWorkks BBoott ROOM代码码VxWorrks运行在目标标机上,完整的的,连结结后的VVxWoorkss二进制制文件.VxWorrks.symm完全的,连连结后带带有符号号表的VVx

7、Woorkss二进制制文件VxWorrks.st完全的,连连结后,staandaalonne,带带有符号号表的VVxWoorkss二进制制文件VxWorrks ImaageVxWorrks imaagess coonsiist of: Text seggmenntexxecuutabble insstruuctiion. Data seggmenntInnitiilizzed glooball annd sstattic varriblles. BSS. 分类和工作作机理:Bootrrom不不是VxxWorrks Imaage,不不参与讨讨论它本本质上是是一段BBoott prrogrram,

8、最少的系统初始化,主要用于启动装载VxWorks image.一般有压缩和不压缩两种形式,如bootrom和boot_uncmp.与VxWorks image的区别在于一个Bootrom调用bootConfig.c,而VxWorks调用usrConfig.c.VxWoorkss 本质质上分为为两大类类:Vxworrks分分为两大大类: Uploaadedd immagees(通通过网口口、串口、硬硬盘、软软盘、DDOC、RROM中中加载到到RAMM中执行行的)vxWorrks - bbasiic TTornnadoo, sshelll 和和 syymbool ttablle 在在主机端端vxx

9、Worrks.st(文文件很大大)- 独立的的 immagee,包含含sheell和和 syymbool ttablle在目目标板运运行ROM bbaseed iimagges(直接烧烧入ROOM的VVxWoorkss):VxWorrks_Romm类的VVxwoorkss又分了了两类:1)驻驻留的rresiidennt 22)不住住留的不住留的 ROMM Baasedd VxxWorrks Imaage驻留的VxxWorrks_romm_reesiddentt说的再具体体点:可下载的VVxwoorkss immageeROM中烧烧制的IImaggevxWorrks_romm - Torrnad

10、do iin RROM,非压缩缩, 在在 RAAM 中中运行vxWorrks.ress_room_nnosyym - Toornaado in ROMM, 非非压缩,在 RROM 中运行行vxWorrks.st_romm - Staand-aloone in ROMM, 压压缩, RAMM 中运运行vxWorrks.ress_room - Sttandd-allonee inn ROOM, 非压缩缩, RROM 中运行行VxWorrks在在存储介介质中的的存放方方式启动启动概述Bootrrom 的启动动最少的系统统初始化化,主要要用于启启动装载载VxWWorkks iimagge.一一般有压压

11、缩和不不压缩两两种形式式,如bboottromm和booot_unccmp.与VxxWorrks imaage的的区别在在于一个个Boootroom调用用boootCoonfiig.cc,而VVxWoorkss调用uusrCConffig.c.文件rommIniit.ss中的rromIInitt()文件件boootInnit.c中的的rommStaart()文件bboottConnfigg.c中中的ussrInnit()syysHwwIniit()usrrKerrnellIniit()KerrnellIniit(uusrRRoott,) 其其中 /tarrgett/coonfiig/aall/

12、boootCoonfiig.cc是Booot ROMM设置模模块.用用于通过过网络加加载VxxWorrks imaage.usrRooot()boootCmmdLooop(voiid)命命令行选选择,或或auttoboootiingbboottLoaad(ppLinne, &enntryy)加载载模块到到内存(网络,TFFFS,TTSFSS)neetiffAtttachh()goo(enntryy)(eentrry)()从入入口开始始执行,不返回回.各个函数的的主要作作用 romInnit()powwer up,dissablle iinteerruupt,putt booot typpe o

13、on tthe staack,cleearss caachees.romSttartt()looad Imaage Seggmennts intto RRAM.usrInnit()Intterrruptt loock outt,saave imfformmatiion aboout booot ttypee,haandlle aall thee Innitiialiizattionn beeforre tthe kerrnell iss acctuaallyy sttartted,theen sstarrts thee keerneel eexeccutiion to creeatee ann

14、 innitiial tassk uusrRRoott().Thiis ttaskk coomplletees tthe staart up.sysHwwIniit()IInteerruup llockked,Iniitiaalizzes harrdwaare,reggistterss,acctivvatiion kerrnellKerneelInnit(usrrRooot,) Initiialiizess annd sstarrts thee keerneel. Definnes sysstemm meemorry pparttitiion. Activvatees aa taask tUs

15、srRooot to commpleete iniitallizaatioon. Unloccks iniierrruptts. Uses usrrIniit()staack. usrRooot() 初始化内存存分区表表(meemorry pparttitiion libbrarry) 初始化系统统系统时时钟(ssysttem cloock) 初始化输入入输出系系统(II/O sysstemm)可可选 Creatte ddeviicess可选选 设置网络(Connfigguree neetwoork)可可选 激活WDBB目标通通信(AActiivatte WWDB ageent)可选 调用程序

16、(Acttivaate apppliccatiion) VxWorrks的的启动Loadaablee VxxWorrks的的启动使用Boootroom进行行最小系系统起动动加载程序段段、数据据段、BBBS段段跳转到RAAM中运运行的VVxWoorkss的启动动(详见见下面)VxWorrk_RROM的的VxWWorkks启动动ROM中运运行的VVxWoorkss的启动动VxWorrks在在ROMM中运行行,即写写入ROOM中的的VxWWorkks是非非压缩的的,不需需要解压压,系统统直接跳跳到ROOM的首首地址,运行VVxWoorkss.注意意:ROOM运行行的VxxWorrks并并不支持持所有

17、的的主扳,应以主主扳手册册为准.文件rommIniit.ss中的rromIInitt()文件件boootInnit.c中的的rommStaart()文件uusrCConffig.c中的的usrrIniit()syssHwIInitt()uusrKKernnelIInitt()KKernnelIInitt(ussrRooot,) VxxWorrks在在ROMM中运行行主要是是为了节节省RAAM空间间,以便便应用程程序有更更大的空空间运行行.只把把VxWWorkks iimagge的ddataa段复制制到RAAM的LLOCAAL_LLOW_ADRRS, texxt部分分留在RROM并并在ROOM中

18、执执行.ROM中运运行的VVxWoorkss缺点是是运行速速度慢.RAM中运运行的VVxWoorkss的启动动VxWorrks在在RAMM中运行行,即写写入ROOM中的的Booot或VVxWoorkss Immagee是压缩缩的,需需要先解解压coopy所所有的ttextt和daata到到RAMM的LOOCALL_LOOW_AADRSS中,下下面syysInnit()主要要是初始始化RAAM用的的,系统统直接跳跳到RAAM的首首地址,运行VVxWoorkssusrInnit()前面面不压缩缩,即rromIInitt(),rommStaart()不能能压缩.文件rommIniit.ss中的rromIInitt()文件件boootInnit.c中的的rommStaart()syssaLiib.ss中的ssysIInitt()文件件usrrConnfigg.c中中的ussrInnit()syysHwwIniit()usrrKerrnellIniit()KerrnellIniit(uusrRRoott,) RAMM运行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论