- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第04章嵌入式实时内核基础祥解.ppt
* * * * * * * * * * * * 第四章嵌入式实时内核基础 主要内容 嵌入式实时内核的关键设计问题 嵌入式实时内核的主要功能 嵌入式实时内核的主要指标 第一节嵌入式实时内核的关键设计问题 中断基本概念介绍 实时性 可移植性 可剪裁、可配置性 可靠性 应用编程接口 中断概念介绍 (1)非嵌套中断处理 中断概念 实时系统处理外部事件,如按键一旦按下,此事件就会通过中断连线通知系统。于是CPU当前运行的程序就被这个外部事件打断,来执行此外部事件的中断处理程序ISR,即读出按键数据,分析是哪个按键按下。中断处理过程分为检测、响应和处理三个阶段。CPU执行每个指令结束时,进入中断周期,检查是否有中断到来,如无,就取下条指令执行;如有,则CPU进入中断响应。中断响应是CPU内部硬件完成的。中断响应后,就开始执行相应的ISR。 (2)嵌套中断处理 中断管理 多任务系统中,ISR包括三方面内容:中断前导、用户ISR和中断后续。前导是保护现场,保存被中断程序的状态;用户ISR完成对中断的具体处理;而后续是恢复现场,前导和后续是由内核的中断接管程序实现的。发生中断-接管程序-用户ISR-接管程序。 保护现场就是保存当前CPU寄存器内容。恢复就是将保存的现场恢复到寄存器中。这些是由中断接管程序完成的。以便确保返回被中断的程序时有属于自己的寄存器内容。 用户中断服务程序(ISR) 当中断线上出现中断信号,对应中断向量中注册的ISR就会被调用。这个过程是由CPU负责,不需要OS内核调度。但需要内核接管服务程序辅助处理。如果允许嵌套,当前的ISR还可能被更高优先权的ISR中断(抢占)。 ISR应尽量短小,以保障系统能及时处理其他中断和任务。ISR通常只处理一些必要的操作,其他的操作则交给与其协作的任务DSR(Deferred Service Routine)来完成。ISR只是进行与外围相关的设备进行数据传送,以及发出确认信息,然后唤醒与之相应的任务,使其准备就绪,将这个事件进一步处理。例如,网卡ISR只传送原始的包数据,而对包内数据的分析与解释则由DSR来完成。 当事件处理程序很短,ISR就可全部完成,就不用DSR。 这种ISR+DSR方式,只当DSR执行完毕,整个事件处理才结束。 所有就绪任务是按优先权处理的,在就绪任务队列中等候处理。并且,每执行一个新的ISR,接管程序后续处理中都要激活重调度程序,对当前所有就绪任务进行一次调度,以使优先级最高的任务马上被执行。 复习一下实时内核 实时内核是实时操作系统的基础。它提供任务管理、内存管理、通信、同步与互斥机制、中断管理、时间管理以及任务扩展功能。内核还提供应用程序接口API功能。 4.1 嵌入式实时内核的关键设计问题 4.1.1 实时性 实时性是实时内核最重要特性之一。实时系统的正确性不仅依赖于系统计算的逻辑结果,还依赖于产生这些结果的时间。实时性能取决于硬件、OS和应用程序AP。当硬件和AP确定之后,实时内核起到关键作用。实时性就是实时内核应该保证系统尽可能快的对外部时间做出反应。 (1)确定性 确定性是指系统对外部事件(任务)相应的最长处理时间是可预知的。实时性和确定性是缺一不可的。一个系统是确定的,就是说,它在固定的、预先确定的时间间隔内操作。 (2)响应性 响应性反映的是,在识别外部事件后,系统要花费多长时间来处理这个事件。例如: 中断处理初始化及开始执行ISR所需的时间; 执行ISR所需时间; 中断嵌套的影响。 (3)响应时间 确定性和响应性在一起构成了系统对外部事件的响应时间。对于多任务实时应用来讲,分为中断响应时间和任务响应时间。中断响应时间是指从中断发生到开始执行ISR的第一条指令的时间;任务响应时间是指从任务对应的中断产生到该任务真正开始执行这一过程所花费的时间。任务响应时间又称任务调度延迟。实时内核的几个重要原则是: 支持多任务; 支持抢占多任务; 支持任务优先级调度; 任务优先级可继承; 支持可预测的任务同步机制; 实时内核的运行时间是可预测的; 系统调用的确定性。 1.调度算法 无论对单处理器还是多处理器,调度算法对响应时间都有很大影响。实时系统的目标:所有的硬实时任务要在它们的最后期限之前完成。尽可能多的将软实时任务在它们的最后期限到达前完成。因此,实时内核中,为了能够在突发状态时作出反应,都采用抢占优先级任务调度。 2. 可抢占内核 可抢占内核是指在执行内核服务程序时,也能响应中断。可抢占内核调度,可进一步提高系统响应性。 a.不可抢占内核情况。 b.可抢占内核调度情况。
文档评论(0)