嵌入系统与软件4.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入系统与软件4

嵌入式实时内核基础 嵌入式实时内核的关键设计问题 实时性 可移植性 可剪裁、可配置性 可靠性 应用编程接口 实时性 实时性是指实时内核应该保证系统尽可能快地对外部事件产生响应。 实时性是实时内核最重要的特性之一。 实时系统的正确性不仅依赖于系统计算的逻辑结果,还依赖于产生这些结果的时间。 系统的实时性与硬件、操作系统及程序三方面有关系。 实时性 相关概念 确定性:是指系统对外部事件响应的最坏时间是可以预知的。 响应性:是指系统在识别外部事件以后,要花多长时间来服务该事件。 响应时间:确定性和响应性结合在一起构成了系统对外部事件的响应时间,对于多任务实时应用来说,可以分两种情况:中断响应时间和任务响应时间。 实时性 内核实时性的重要原则: 支持多任务; 支持强占式多任务; 支持任务的优先级调度; 任务的优先级可以继承; 支持可预测的任务同步机制; 实时内核的运行时间可知并可以预测; 系统调用的确定性。 实时性 影响实时性的主要因素 调度算法 可抢占式内核 内核的关中断时间 数据结构 存储管理机制 资源的有限时间等待 优先级反转问题的解决 中断处理 浮点数的优化处理 可移植性 可移植性是设计实时内核时需要重点考虑的目标之一; 嵌入式软件的移植工作分为异种处理器平台之间的移植和同种处理器平台之间的移植; 不同处理器平台间的移植工作集中在任务切换、中断控制设备和时间设备的驱动上; 同种处理器平台间的移植工作集中在对芯片级控制寄存器的操作上。 影响内核可移植性的因素 编程语言:高级语言与汇编语言。 体系结构: 可以将内核设计为三层结构:硬件无关层、硬件抽象层和硬件相关层。 代码实现的技巧: 对不可移植代码的使用转换成对函数和宏定义的使用。 可剪裁、可配置性 可剪裁表示系统在增加、删除功能模块时仅需要做少量的修改或者根本不用修改。可剪裁性要求系统中各功能模块之间尽量不存在耦合关系。 可配置性是针对系统中未被卸装的模块,根据应用在数量、机制、工作空间和堆栈等方面的不同需求,决定系统的规模、功能以及内存分配等。 可靠性 可靠性对于实时系统来说通常比非实时系统更为重要。 提高可靠性所采用的机制有:异步信号、定时器、优先级继承、优先级天花板、异常(出错)处理、用户扩展和内存保护等。 编程接口 每个操作系统提供的系统调用的功能和种类都不同。一般来说,系统调用提供得越多,功能越强,越能对应用程序的开发提供高效率的支持,同时也会减少应用程序的维护工作量;相反,系统调用提供得越少,越单一,应用程序越复杂,可靠性越低。 API影响着应用参与系统控制的深浅程度。通过实时内核提供的API,开发者可以在应用中使用实时内核提供的各种功能,达到对系统硬件资源和软件资源的合理、充分的使用。 提供面向行业的接口标准是嵌入式实时操作系统的一个发展趋势。 嵌入式实时内核的主要功能 任务管理 中断管理 任务间的同步与通信管理 时间管理 对共享资源的互斥管理 存储管理 I/O管理 出错管理 用户扩展管理 电源管理 任务管理 任务是被调度执行和竞争资源的最基本实体单元; 实时内核最基本的功能是管理任务、提供多线程的支持; 任务管理主要包括创建任务、删除任务、改变任务状态和查询任务状态等功能; 任务管理的核心是任务调度,确定一个适合嵌入式应用特定要求的任务调度算法。 多任务管理机制的好处 相对于前后台软件结构而言,多任务软件结构的每个任务规模较小,每个任务更容易编码和调试,其质量也更容易得到保证。 不少应用本身就是由多个任务构成的,采用多任务的处理方式是应用问题的一个非常自然的解决方式。 任务之间具有较高的独立性,耦合性小,通过增加新的任务就能方便地扩充系统功能。 实时性强,保证紧急事件得到优先处理成为可能。 进程 进程的定义主要包括以下内容: 一个正在执行的程序; 计算机中正在运行的程序的一个实例; 可以分配给处理器,并由处理器执行的一个实体; 由一个顺序的执行线程、一个当前状态和一组相关的系统资源所刻画的活动单元。 进程由代码、数据、堆栈和进程控制块PCB构成。 任务参数 任务的特性可以通过优先级、周期、计算时间、就绪时间和截止时间等参数来进行描述。 任务优先级表示任务对应工作内容在处理上的优先程度。优先级越高,表明任务越需要得到优先处理。任务优先级分为静态优先级和动态优先级。静态优先级表示任务的优先级被确定后,在系统运行过程中将不再发生变化;动态优先级则意味着在系统的运行过程中,任务的优先级是可以动态变化的。 周期是周期任务所具有的参数,表示任务周期性执行的间隔时间。 任务的计算时间是指任务在特定硬件环境下被完整执行所需要的时间,也被称为任务的执行时间。 任务参数 任务的特性可以通过优先级、周期、计算时间、就绪时间和截止时间等参数来进行描述。 任务的就绪时间表示任务具备了在

文档评论(0)

186****0507 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档