ADLINKVxWorks培训.ppt_第1页
ADLINKVxWorks培训.ppt_第2页
ADLINKVxWorks培训.ppt_第3页
ADLINKVxWorks培训.ppt_第4页
ADLINKVxWorks培训.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

VxWorks基础及操作指南 演讲者:毛海涛 制作时间:2011/11 第一部分 VxWorks基础 一 . 风河公司介绍 二 . VxWorks历史及发行版本介绍 三 . VxWorks的应用领域 四 . VxWorks的内核机制 五 . 介绍bsp&bootrom&vxworks 六. bootrom及vxworks的启动流程 七. 开发环境Tornado2.2及Workbench简介 目 录 第二部分 VxWorks操作指南 一 . 制作VxWorks步骤 二 . 两个例子 1. VxWorks5.5.1-cpci3915为例 2. VxWorks6.6 -cpci3965为例 第三部分 以VxWorks为例讲述OS的启动流程 风河公司简介 1981年:Jerry Fiddler在美国加州柏克莱的一间车库中创立Wind River.公司 名的灵感来自于Jerry Fiddler常去渡假的Wind River山脉. 1987年:“VxWorks”这套目前已获业界普遍采用并成为嵌入式装置标准平台 的实时操作系统(RTOS)正式推出。 1993年:Wind River成为第一家公开上市(IPO)的嵌入式运算公司。 1995年:市场上第一套图形化嵌入式系统开发环境“Tornado”正式发布。 1997年:美国航天总署(NASA)搭载“VxWorks”实时操作系统的“火星探 路者号(Mars Pathfinder)”宇宙飞船在火星降落。 1998年:Wind River总部迁移至美国加州Alameda市。 1999年:Wind River收购业界第二大实时软件设计公司Integrated Systems 。 1999年:Wind River进入亚太市场, 韩国、中国台湾、新加坡、中国大陆和印 度办事处相继设立. 2004年:以Eclipse为基础的集成化开发环境“Wind River Workbench”正式推出 2004年:Wind River正式进军嵌入式Linux市场. 2007年:Wind River加入Google的开放手机联盟(Open Handset Alliance,OHA) 2008年:Wind River成为嵌入式Linux市场领导厂商, 此时距正式进军该市场仅 有四年时间. 2009年:Wind River正式发表第一型(Type 1)嵌入式Hypervisor, 并由此进军 嵌入式虚拟化平台市场. 2009年:Wind River被英特尔(Intel)收购, 成为Intel的全资子公司. 2009年:商用Android开发平台“Wind River Platform for Android”正式推出. 2010年:Wind River与威睿电通合作推出“昆仑”Android手机“交钥匙”软硬 件解决方案, 协助OEM厂商开发出既符合中国电信系统营运商认证标 准又可支持高档功能的低成本Android手机. 2011年:Wind River与意大利高科技汽车系统及组件供货商Magneti Marelli合作 针对汽车产业推出首套符合GENIVI联盟标准规范的车载信息娱乐应用 (In-Vehicle Infotainment,IVI)解决方案,并获BMW集团率先采用于新 款车型. 2011年:Wind River与McAfee合作开发并支持完整的嵌入式及移动装置安全防 护解决方案. 2011年:推出市场上首套通过EAL4+通用标准评估保证等级(Common Criteria Evaluation Assurance Level 4+,CC EAL4+)认证的商用嵌入式Linux 平台Wind River Linux Secure. VxWorks历史及发行版本介绍 1.VxWorks历史及发行版本介绍 (1)VxWorks5.5.1 开发环境:tornado2.2.1 + windML3.0 (2)VxWorks6.6 开发环境:workbench3.0 + windML5.1 (3)VxWorks6.7 开发环境:workbench3.1 + windML5.2 (4)VxWorks6.8 开发环境:workbench3.2 + windML5.3 VxWorks的应用领域 VxWorks支持几乎所有现代市场上的嵌入式CPU,包括x86系列、MIPS、 PowerPC、Freescale ColdFire、Intel i960、SPARC、SH-4、ARM, StrongARM以及xScaleCPU。它以其良好的可靠性和卓越的实时性被广泛地 应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中, 如卫星通讯、军事演习、弹道制导、飞机导航等。在美国的F-16、F/A-18战 斗机、B-2隐形轰炸机和爱国者导弹上,甚至连1997年7月在火星表面登陆的 火星探测器,2008年5月在火星表面上登陆的凤凰号火星探测器上也都使用 到了VxWorks。 观看影片 影片大概内容:2001年,NASA(美国国家航空航天局)选择VxWorks平台 为国际1号空间站研发一种名为X-38救生艇的新型宇宙飞船,为宇航员提供紧 急逃生的途径。在这个特效片段中,风河的创始人Jerry Fiddler介绍了这个项 目,并解释了为什么VxWorks平台是研发这个项目的最佳选择。 实时性 硬实时:每个deadline都不能被miss 软实时:可以有一部分deadline被miss,或者没有什么特别重要 的deadline 非实时:对时间没有什么特定要求 软实时和硬实时 硬实时 - 代表产品 VxWorks 举一个经常使用的实例, 中高档汽车中使用的气囊. 当报告车辆碰撞的传感器中断CPU后, 操作系统应快速地分配展开气囊的任务, 并且不允许任何其他非实时处理进行干扰, 晚一秒 钟展开气囊比没有气囊的情况更糟糕, 这就是一个典型的必须使用硬实时的系统. 硬实时系统指系统要有确保的最坏情况下的服务时间, 即对于事件的响应时间的截止期限是 无论如何都必须得到满足. 软实时 - 代表产品 Linux 再举一个实例, IPTV数字电视机顶盒, 需要实时的处理(解码)视频流, 如果丢失了一个或几个 视频帧, 显然会造成视频的品质更差, 但是只要做过简单的抖动处理的系统, 丢失几个视频 帧就不会对整个系统造成不可挽救的影响. 软实时系统就是那些从统计的角度来说, 一个任 务能够得到有确保的处理时间, 到达系统的事件也能够在截止期限到来之前得到处理, 但违 反截止期限并不会带来致命的错误. bsp&bootrom&vxworks 一. 什么是BSP? BSP: Board Support Package,板级支持包 VxWorks针对于CPU, BSP针对于硬件环境, BSP向VxWorks提供基本的硬件接口函数 BSP是一系列文件(函数)的集合,有些用来在操作系统内核启动前执行硬件初始 化, 有些被操作系统调用. 二. bootrom&VxWorks 三.BSP中的文件介绍 1. 在 target/config/all 目录下的文件 bootConfig.c Main Initialization for Boot ROM Images bootInit.c Second-Stage ROM Initialization dataSegPad.s VxVMI Text Segment Protection usrConfig.c Initialization Code for VxWorks Image 2. 在target/config/comps/vxWorks 目录下的文件 3. 在target/config/comps/src 目录下的文件 4. 在target/config/bspname 目录下的文件 某种指定的BSP目录下的文件介绍 config.h romInit.s sysALib.s sysLib.c sysSerial.c sysScsi.c sysNet.c bspname.h target.nr VxWorks Boot Sequence Vxworks的内核机制 Wind内核 多任务内核 进行任务管理 任务是竞争系统资源的最小运行单元. 任务可以使用或等待CPU, I/O设备及 内 存空间等系统资源,并独立于其它任务, 与它们一起并发运行(宏观上如此 ). VxWorks内核使任务能快速共享系统的绝大部分资源, 同时有独立的上下文来 控制个别线程的执行. VxWorks实时内核Wind提供了基本的多任务环境, 系统内核根据某一调度策 略让它们交替运行. 系统调度器使用任务控制块的数据结构(简记为TCB)来管理任务调度功能。 Tornado介绍 Tornado开发环境 Tornado体系结构 交叉开发环境 Workbench介绍 制作VxWorks步骤 一. VxWorks5.5的制作步骤 1.制作bootrom.bin (1)修改config.h (2)修改Makefile (3)torVars.bat (4)make clean & make bootrom.bin 2.制作vxworks 3.mkboot a: bootrom.bin 4.copy vxworks a:或者通过网络加载 二.VxWorks6.6的制作步骤 1.制作bootrom.bin 2.制作vxworks 3.mkboot a: bootrom.bin 4.copy vxworks a: 或者通过网络加载 实例操作 一.cpci3915 的vxworks5.5映像的制作 加载策略:硬盘 二.cpci3965的vxworks6.6映像的制作 加载策略:网络 以VxWorks为例讲述OS的启动流程 一. MBR的概念 硬盘的0柱面、0磁头、1扇区称为主引导扇区,FDISK程序写到该扇区的内容称为 主引导记录(MBR).该记录占用512个字节,它用于硬盘启动时将系统控制权 交给用户指定的,并在分区表中登记了的某个操作系统区. 二. MBR的结构 0000H-0088H 主引导程序:负责从活动分区中装载,并运行系统引导程序。 0089H-00E1H 出错信息数据区 00E2H-01BDH 全部为0 01BE-01CD 分区项1(16字节) 01CE-01DD 分区项2(16字节) 01DE-01ED 分区项3(16字节) 01EE-01FD 分区项4(16字节) 01FE-01FF 0x55,0xAA 结束标志 分区的结构 字节1:引导标志(若值为80H表示活动分区,若值为00H表示非活动分区) 字节2:本分区起始磁头号 字节3(低6位):本分区起始扇区号 字节4(再加上字节3的高2位):本分区起始柱面号 字节5:分区类型符 00H-表示该分区未用(即没有指定) 06H-FAT16基本分区 0BH-FAT32基本分区 05H-扩展分区 07H-NTFS分区 0FH-(LBA模式)扩展分区(83H为linux分区等) 字节6:本分区的结束磁头号 字节7(低6位):本分区的结束扇区号 字节8(再加上字节7的高2位):本分区的结束柱面号 字节9,10,11,12:本分区之前已使用的扇区数 字节13,14,15,16:本分区的总扇区数 MBR的主要功能及工作流程 启动PC机时,系统首先对硬件设备进行测试,测试成功后进入自举程序 INT 19H,然后读系统磁盘0柱面、0磁头、1扇区的主引导记录(MBR)内容到 内存指定单元0:7C00地址开始的区域,并执行MBR程序段。 硬盘的主引导记录(MBR)是不属于任何一个操作系统的,它先于所有的 操作系统而被调入内存,并发挥作用,然后才将控制权交给主分区(活动分 区)内的操作系统,并用主分区信息表来管理硬盘。 MBR程序段的主要功能如下: 检查硬盘分区表是否完好。 在分区表中寻找可引导的“活动”分区。 将活动分区的第一逻辑扇区内容装入内存。在DOS分区中,此扇区内容称为 DOS引导记录(DBR)。 二.bios-bootrom-vxworks Step 1. 内部电源打开, 初始化, 等待一小段时间用来产生稳定的电流. 如果主 板芯片和CPU收到了不符合规定的电流,将自动产生一个RESET信号. 在主板 没有收到电源的Power Good信号之前,重复步骤1. Step 2. 执行BIOS中0FFF0h处的代码.这里只有一条JMP指令,将跳转到真正 的BIOS启动程序处. Step 3. BIOS开始加电自检(Power-On Self Test, POST),如果出现错误,启动 停止.成功的话执行INT 19h(SYSTEM - BOOTSTRAP LOADER) Step 4. BIOS开始寻找显卡,找到的话将执行显卡的BIOS.接着显卡初始化,将 显示一段显卡信息,我们开机看到的第一屏就是它. Step 5. BIOS开始执行所有其他设备的BIOS,包括软驱,硬盘等. Step 6. BIOS显示启动信息 Step 7. BIOS开始额外的检测.一般有内存检测,如果内存有问题,将显示错误消 息. Step 8. BIOS探测所有的硬件,将显示如硬盘/光区信息等 Step 9. BIOS给出一个已知硬件的列表 Step 10. BIOS按照设置的驱动器顺序找驱动器,如果驱动器

温馨提示

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

评论

0/150

提交评论