物联网操作系统原理04_中断、异常与时间.pptxVIP

物联网操作系统原理04_中断、异常与时间.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章 Huawei LiteOS中断、异常与时间瞿文浩 孔令和 目录中断中断向量表中断请求与处理异常接管时间管理系统时间软件定时器中断一种硬件机制用于通知CPU发生了一个异步事件中断服务程序PU在确认中断后,将其部分或全部寄存器入栈保存,并跳转执行中断服务程序中断中断的三个时间概念中断响应时间从中断被识别到对应的中断处理代码开始执行的时间,这个时间涵盖了中断机制引入的所有耗时;中断复时间从中断代码执行完毕,到被中断的任务或由于中断处理而进入就绪态的更高优先级任务代码开始执行之间的时间;任务等待时间从中断发生到任务代码重新开始执行的时间中断向量表中断号每个中断请求信号都会有特定的标志,使得设备能够判断是哪个任务提出的中断请求中断向量表中断向量的存储区,中断向量与中断号对应,中断向量在中断向量表中按照中断号顺序存储中断向量表X86架构中断描述符表(Interrupt Descriptor Table,IDT)最多支持256项中断ARM架构中断向量表的存储地址可以由VBAR或VTOR寄存器指定Cortex-A系列处理器:包含8个entryCortex-M系列处理器:最多支持256个entry中断请求与处理与中断相关的硬件外部设备发起中断的源中断控制器接受中断并发送中断信号给CPUCPU响应中断请求,执行处理程序中断请求与处理中断处理流程设备给CPU发出一个中断信号CPU在响应中断前结束当前指令的执行。CPU对中断进行测定,确定存在未响应的中断,并给提交中断的设备发送确认信号,确认信号允许该设备取消它的中断信号CPU为把控制权转移到中断处理程序中做准备CPU把响应此中断的中断处理程序入口地址装入到程序计数器中中断程序相关的程序计数器和PSW被保存到系统栈中中断处理程序现在可以开始处理中断当中断处理结束后,被保存的寄存器值从栈中释放并恢复到寄存器中从栈中恢复PSW和程序计数器的值,其结果是下一条要执行的指令来自前面被中断的程序多中断处理在处理中断时禁止发生中断所有中断严格按照顺序执行没有考虑时间限制和优先级多中断处理定义中断优先级根据中断的重要性和时间的紧迫程度,将中断源分为若干个级别优先级高的中断源可以中断优先级低的中断服务程序默认中断优先级(由高到低)硬件故障中断自愿中断程序性中断外部中断输入输出中断多中断处理中断优先级遵循如下规则中断嵌套具有高抢占式优先级的中断可以在具有低抢占式优先级的中断服务程序执行过程中被响应子优先级优先级相同的情况下,高子优先级的中断优先被响应子优先级不支持中断嵌套异常异常也称内中断、例外或陷入(Trap),是在执行程序期间发生的同步事件非法操作码地址越界算术溢出虚存系统的缺页专门的陷入指令…异常接管操作系统对在运行期间发生的异常情况而进行处理的一系列动作打印函数调用栈信息打印CPU现场信息打印任务的堆栈情况异常接管作为一种调测手段,可以在系统发生异常时提供给用户有用的异常信息,譬如异常的类型、发生异常时系统的状态等,以方便用户定位分析问题异常接管分析调用栈结构获取当前FP寄存器的值FP寄存器减去4字节得到当前PC值,得到运行现场信息FP寄存器减去24字节,得到上次函数的调用栈帧的起始地址FP寄存器减去16字节得到上次函数调用结束时SP的地址,那么FP到SP之间的栈就是一个函数调用的栈帧通过每一层栈帧中的PC指针即可知道函数调用的关系时间管理时间至关重要任务定时任务周期性执行系统时钟软件定时器系统时钟系统时钟是由定时器/计数器产生的输出脉冲触发中断而产生的也称为时标或Tick操作系统的基本时间单位Tick可根据特定情况改变时长Tick的大小决定了系统的时间粒度系统时钟Cycle系统的最小计时单位时长由系统主频决定本质是晶体振荡器产生的时钟周期在知晓主频的前提下,可以通过Cycle确定Tick的时长软件定时器基于系统时钟中断且由软件来模拟的定时器定时精度与Tick的时长有关通过软件定时器可以实现任务的定时调用周期性调用软件定时器Huawei LiteOS软件定时器支持以下功能静态裁剪:能通过宏关闭软件定时器功能。软件定时器创建。软件定时器启动。软件定时器停止。软件定时器删除。软件定时器剩余Tick数获取。小结中断中断向量表中断请求与处理异常接管时间管理系统时间软件定时器

文档评论(0)

132****9295 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档