文档详情

第8章嵌入式系统祥解.ppt

发布:2016-11-01约2.28万字共100页下载文档
文本预览下载声明
第8章 嵌入式系统 软件及操作系统基础 8.1 嵌入式软件基础 8.1.1 嵌入式软件的特点 8.1.2 嵌入式软件的分类 8.1.3 嵌入式软件的体系结构 8.1.4 嵌入式系统的设备驱动层 8.1.5 嵌入式中间件 8.1.1 嵌入式软件特点 应用在嵌入式计算机系统当中的各种软件 统称为嵌入式软件。 嵌入式软件的特点: (l)规模较小 嵌入式系统资源有限,要求软件尽可能精简,多数在几MB以内。 (2)开发难度大 需要开发人员对编程语言、编译器和操作系统有深刻了解 要求开发人员具有扎实的软、硬件基础 嵌入式软件的运行环境和开发环境比PC机复杂 (3)高实时性和可靠性要求 对外部事件做出反应的时间必须要快,对于事件的处理要在限定的时间期限之前完成,否则就有可能引起系统的崩溃; 某些情况下要求是确定的、可重复实现的,可以预测的。 (4)软件固化存储 为了提高系统的启动速度、执行速度和可靠性,嵌入式系统中的软件一般都固化在存储器芯片或微处理器中。 8.1.2 嵌入式软件的分类 1.系统软件 控制和管理嵌入式系统资源,为嵌入式应用提供支持的各种软件,如设备驱动程序、嵌入式操作系统、嵌入式中间件等。 2.应用软件 嵌入式系统中的上层软件,定义了嵌入式设备的主要功能和用途,并负责与用户进行交互。 3.支撑软件 辅助软件开发的工具软件,如系统分析设计工具、在线仿真工具、交叉编译器、源程序模拟器和配置管理工具等。 系统软件和应用软件运行在目标平台(即嵌入式设备上) 软件开发工具来说,运行在开发平台(PC机)上 8.1.3 嵌入式软件的体系结构 1.无操作系统的嵌入式软件 应用软件直接建立在硬件上,没有专门的操作系统,软件规模较小。 无操作系统的嵌入式软件主要采用以下两种实现方式: (1) 循环轮转 (2) 中断(前后台) (1)循环轮转方式 基本思想:把系统的功能分解为若干个不同的任务,放置在一个无限循环语句当中,按照时间顺序逐一执行。 优点:程序简单、直观、开销小、可预测。循环轮转方式的软件系统只有一条执行流程和一个地址空间,不需要任务之间的调度和切换,其程序的代码都是固定的,函数之间的调用关系也是明确的,整个系统的执行过程是可预测的. 缺点:程序必须按顺序执行,无法处理异步事件,缺乏并行处理的能力。缺乏硬件上的时间控制机制,无法实现定时功能。 (2)中断方式 中断方式又称为前后台系统形式,系统在循环轮转方式的基础上增加了中断处理功能。 前台程序(foreground)负责处理异步事件,即ISR(Interrupt Service Routine,中断服务程序)。 后台程序(background)是一个系统管理调度程序,一般采用无限循环形式,负责整个嵌入式系统软、硬件资源的分配、管理以及任务的调度。通过一定的调度算法来完成相应的操作。 嵌入式操作系统在功能复杂、系统庞大的系统中广泛应用。 在应用软件开发时,程序员不是直接面对嵌入式硬件设备,而是采用一些嵌入式软件开发环境,在操作系统的基础上编写程序。 采用嵌入式操作系统管理的系统,在遇到强干扰时,可能只会引起系统中的某一个进程被破坏,但这可以通过系统的监控进程对其进行修复,系统具有自愈能力,不会造成系统崩溃。 在嵌入式操作系统环境下,开发一个复杂的应用程序,将整个程序分解为多个任务模块,每个任务模块的调试、修改几乎不影响其他模块。 利用商业软件提供的多任务调试环境,可大大提高系统软件的开发效率,降低开发成本,缩短开发周期。 嵌入式操作系统本身是可以剪裁的,嵌入式系统外设、相关应用也可以配置,所开发的应用软件可以在不同的应用环境、不同的处理器芯片之间移植,软件构件可复用,有利于系统的扩展和移植。 8.1.4 嵌入式系统的设备驱动 完成嵌入式系统硬件设备所需要的一些软件初始化和管理。 直接对硬件进行管理和控制,并为上层软件提供所需的驱动支持。 设备驱动层也称为BSP (板级支持包) 设备驱动层也称为BSP(Board Support Package, 板级支持包) 在BSP中把所有与硬件相关的代码都封装起来,为操作系统提供一个虚拟的硬件平台,操作系统运行在这个虚拟的硬件平台上。 在BSP当中,使用一组定义好的编程接口来与BSP进行交互,并通过BSP来访问真正的硬件。 BSP把嵌入式操作系统与具体的硬件平台隔离开来。 BootLoader(引导加载程序)是在操作系统内
显示全部
相似文档