- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式系统与软件——第六章
嵌入式系统与软件 软件学院 第六章 板级支持包与系统引导 核心内容 嵌入式软件运行过程 板级支持包(BSP) RTOS的引导模式 Boot Loader 嵌入式系统的执行流程 嵌入式软件运行流程 嵌入式软件运行流程 上电复位、板级初始化阶段 嵌入式系统上电复位后完成板级初始化工作。 板级初始化程序具有完全的硬件特性,一般采用汇编语言实现。不同的嵌入式系统,板级初始化时要完成的工作具有一定的特殊性,但以下工作一般是必须完成的: CPU中堆栈指针寄存器的初始化。 BSS段(Block Storage Space表示未被初始化的数据)的初始化。 CPU芯片级的初始化:中断控制器、内存等的初始化。 嵌入式软件运行流程 系统引导/升级阶段 根据需要分别进入系统软件引导阶段或系统升级阶段。 软件可通过测试通信端口数据或判断特定开关的方式分别进入不同阶段。 嵌入式软件运行流程 系统引导阶段 RAM启动 将系统软件从NOR Flash中读出并加载到RAM中运行:解决成本及Flash速度较慢问题。软件可压缩存储在Flash中 NorFlash启动 让软件直接在NorFlash上运行,进入系统初始化阶段 外存启动 将软件从外存(如NandFlash、CF卡、MMC等)中读取出来加载到RAM中运行:这种方式的成本更低。 嵌入式软件运行流程 系统升级阶段 进入系统升级阶段后系统可通过网络进行远程升级或通过串口进行本地升级。 远程升级一般支持TFTP、FTP、HTTP等方式。 本地升级可通过Console口使用超级终端或特定的升级软件进行。 嵌入式软件运行流程 系统初始化阶段 操作系统等系统软件各功能部分必需的初始化工作:如根据系统配置初始化数据空间、初始化系统所需的接口和外设等 需要按特定顺序进行:如首先完成内核的初始化,然后完成网络、文件系统等的初始化,最后完成中间件等的初始化工作 嵌入式软件运行流程 应用初始化阶段 在该阶段进行应用任务的创建,信号量、消息队列的创建和与应用相关的其它初始化工作。 多任务应用运行阶段 各种初始化工作完成后,系统进入多任务状态,操作系统按照已确定的算法进行任务的调度,各应用任务分别完成特定的功能。 板级支持包 BSP BSP的概念 BSP中驱动程序 BSP和BIOS的区别 RTOS的BSP 一、BSP的概念 BSP是嵌入式系统的基础部分,也是实现系统可移植性的关键。它负责上电时的硬件初始化、启动RTOS或应用程序模块、提供底层硬件驱动,为上层软件提供访问底层硬件的手段。 二、BSP中驱动程序 1、驱动程序的概念 2、驱动程序基本功能 1) 对设备初始化和释放。 2) 对设备进行管理。 3) 读取应用程序传送给设备文件 的数据,并回送应用程序请求 的数据。 4) 检测和处理设备出现的错误。 3、驱动程序的运作过程 三、PC的BIOS与BSP的差异 相同处 部分执行功能比较类似:负责在电脑开启时检测、初始化系统设备(设置栈指针,中断分配,内存初始化等)、装入操作系统 不同处:BIOS不包含设备驱动程序;BSP包含 不同处:BIOS不可修改;BSP可以编程修改 四、RTOS的BSP 基本BSP 仅提供CPU复位、初始化、驱动串口和必要的时钟处理功能 VxWorks的BSP RTEMS的BSP RTOS 引导模式 两种引导模式 需要Boot Loader的引导模式 采用高性能RAM的系统;由于RAM空间的限制 不需要Boot Loader的引导模式 对需要快速启动的系统;时间效率要求较高,空间限制较少。 - 方法:直接在NorFlash或ROM等非易失性 主存介质中运行,启动速度快 实例:VxWorks启动过程 实例:ROM中运行VxWorks ROM中运行VxWorks 存储运行模式 写入ROM中的VxWorks是非压缩的,不需要解压,系统直接跳到ROM的首地址,运行VxWorks 原因 VxWorks在ROM中运行主要是为了节省RAM空间,使应用程序有更大的空间运行 优缺点 ROM中运行的VxWorks优点是启动速度快,缺点是运行速度慢 实例: RAM中运行VxWorks RAM中运行VxWorks 存储运行模式 写入ROM或Flash中的BootROM Image或VxWorks Image是压缩的,需要先拷贝、解压所有的text和data到RAM的RAM_LOW_ADRS中,然后运行VxWorks 优缺点 ROM中运行的VxWorks优点是启动速度快,缺点是运行速度慢 Boot Loader Boot Loader概念 Boot Loader是在操作系统内核运行之前执行的一段小程序。它将操作系统内核从外部存
文档评论(0)