第七讲 嵌入式软件系统.pptVIP

  1. 1、本文档共49页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
陈慈发 2008年春夏 计算机软件开发分为两种:通用计算机软件开发和嵌入式计算机软件开发。 通用计算机的软件开发,其开发平台和运行平台通常相同。 嵌入式计算机的软件开发则不同,大部分嵌入式系统的开发平台和运行平台不同。开发平台无法运行嵌入式目标软件,而嵌入式目标系统无法进行软件开发。 嵌入式系统的软件开发通常有下面两种开发形式: (1)基于祼机的开发形式 开发的嵌入式系统的软件没有任何OS的支持,软件的所有代码都需要软件程序员进行开发,需要考虑众多的开发问题、系统的设计问题等。早期嵌入式系统大多如此,开发语言采用汇编语言。当前嵌入式系统的软件开发也有采用祼机形式开发的,但一般属于简单的系统。 (2)基于嵌入式OS内核的开发方式 一般用于复杂多功能的嵌入式系统的软件开发。根据使用的OS的种类和功能的不同,又分为使用OS内核和使用OS全部两种情况。 对于小型的嵌入式系统应用,如不需复杂的文件系统,人机接口比较简单,可以基于OS内核进行软件开发。 对于复杂的嵌入式系统应用,如包含文件系统、图形化的人机界面、设备驱动程序等,应使用完整的嵌入式OS进行软件开发。完整的嵌入式OS也是模块化的,是可以裁减的。 7.1 嵌入式软件结构与组成 嵌入式软件的特点之一是程序有一个入口,没有出口,整个程序是一个无限循环结构;特点之二是程序与操作系统融为一体,须考虑操作系统的作用。考虑: 嵌入式操作系统; 操作系统与应用软件的集成; 软件结构。嵌入式系统应用软件是没有出口的,程序不能“退出”,程序结构是无限循环; 硬件支持、操作系统支持、程序的初始化、程序引导; 可能没有操作系统,在祼机上直接开发。 7.1.1 嵌入式系统软件组成 嵌入式系统的软件通常包括以下部分: 初始化引导代码; 板级支持包; 嵌入式操作系统; 网络协议栈; 图形用户界面; 应用软件。 基于嵌入式操作系统的嵌入式软件结构如图所示。 7.1.2 初始化引导代码 上电复位后第一个执行的代码。 所有嵌入式处理器(包括通用处理器)上电复位后首先进入复位向量(如80X86的复位向量是FFFF0H,ARM7TDMI的复位向量),执行复位向量处的第一条指令,系统的其它代码必须在复位后执行。 不同的系统复位引导代码功能有所差异。如PC,初始化引导代码进行计算机的自检,引导操作系统等。对于嵌入式系统,初始化引导代码也可参照PC进行设计,但应注意实时性,尽量简化。 7.1.3 板级支持包BSP 嵌入式处理器品种太多,嵌入式操作系统厂商不可能专门为每种嵌入式处理器设计一种嵌入式操作系统。通常的作法是:将操作系统的共性部分用标准C语言实现,把依赖于硬件的部分(MEM种类及参数、外部设备配置、地址分配等)提供给用户进行代码编制,OS规定统一的标准规范,用户编写的这些代码为用户的定制硬件和OS之间提供一个接口和支持平台,即为板级支持包(Board Support Package,BSP)。 通常BSP主要进行硬件初始化,如硬件寄存器配置、MEM配置、I/O参数配置、硬件定时器等,然后进入操作系统代码区。 7.1.4 嵌入式操作系统 复杂嵌入式系统都需要操作系统的支持,如手机、PDA等。嵌入式系统软件结构中,OS处于BSP和应用软件之间。应用软件的开发调用OS的功能,OS的功能以API(Application Program Interface)的形式提供。 嵌入式操作系统通常是可裁减结构,有两种开发模式: (1)基于EOS内核:小型嵌入式系统软件开发采用,通常采用实时多任务OS内核,包括CPU管理、MEM管理功能。 (2)基于完整的EOS:大型嵌入式系统软件开发采用,包括OS内核、文件系统、人机界面等。 7.1.5 网络协议栈 协议栈对于具有网络功能的嵌入式系统产品是必要的,目前有两种方式,一是独立的第三方协议栈产品,二是由EOS提供商提供。 协议栈的运行必须基于EOS的平台支持,但不意味着协议栈必须依赖于OS的API,事实上,许多嵌入式协议栈做到了与OS的最大独立性,可以与大多数EOS集成运行。 7.1.6 图形用户接口GUI 对于大多数嵌入式系统,图形用户接口GUI是必须的。GUI运行在嵌入式操作系统之上,应用软件通过GUI的功能调用来实现。 7.1.7 应用软件 嵌入式系统的应用软件一般需要自主开发,不同的嵌入式系统应用软件各具特色、差异很大。应用软件的开发通常基于操作系统、网络协议栈、图形用户接口、文件系统等一系列的低层API。如果没有OS,则所有程序代码都必须自己开发。 7.2 监控程序

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档