zoukankan      html  css  js  c++  java
  • Tail-chaining(末尾连锁)中断说明

    【转载】http://lxdawn.blog.163.com/blog/static/173620990201273111337204/

    Tail-chaining是指一个中断退出至下一个中断进入这段时间的动

    在工控领域,用户要求具有更快的中断速度,Cortex-M3采用了Tail-Chaining中断技术,完全基于硬件进行中断处理,最多可减少12个时钟周期数,在实际应用中可减少 70%中断。

    当CPU服务于某个中断(假设为A)时,如果有优先级低于当前中断的其它中断到达,它们(假设有B、C、D)将会被至于挂起状态;当前中断的处理结束后,所有处于挂起状态的中断中优先级最高的哪个(假设是C)将要被响应(8楼那段英文的后半段就是这个意思)。
    按照以前没有Tail-chaining的处理,大致的处理过程可以如下描述:
    1)压栈保存寄存器
    2)进入中断A的服务程序
    3)处理中断A
    4) 退栈恢复寄存器
    5)压栈保存寄存器
    6)进入中断C的服务程序
    7)处理中断C
    8) 退栈恢复寄存器
    引入Tail-chaining的概念,上述的步骤4)和步骤5被省略,节省了时间。
    从这个过程可以看出Tail-chaining的概念与中断优先级的概念无关。

  • 相关阅读:
    java读取ANSI编码或者UTF8编码文件乱码问题解决
    java集合框架(Framework)的性能
    堆排序程序
    Python监控Apache,MySQL
    堆排序和快速排序性能比较
    资源管理命令
    Python监控Apache,MySQL
    资源管理命令
    javap反编译
    浏览器的用户代理字符串
  • 原文地址:https://www.cnblogs.com/LubinLew/p/Tail-chaining.html
Copyright © 2011-2022 走看看