首页 > 其他 > 详细

关于中断的顶半部和底半部

时间:2014-10-28 19:24:20      阅读:407      评论:0      收藏:0      [点我收藏+]

关于中断的顶半部和底半部

我们要把中断处理中需要做的工作区分开来:中断处理程序中,只处理那些有严格时间限制的工作,比如复位硬件,对中断进行应答等。而那些可以拖到后面做的,或者说有可能睡眠的处理,都应当放到下半部去处理这样做的目的很显然,就是让中断处理程序尽可能的简洁明快在适当的时机,下半部会开中断执行

“顶半部”:是实际响应中断的例程(request_irq 注册的那个例程)。
“底半部”:是被顶半部调度,并在稍后更安全的时间内执行的函数


为什么要划分呢?
因为中断存在一个悖论: Linux 大部分动作都是有中断来做,一个中断触发拉要做很多的事情,但是因为中断的优先级高,占用cpu,我们需要中断的占用事件应该更断,可是又有很多事情要去做,这就有拉顶半部和底半部。

关于中断的顶半部和底半部

原文:http://www.cnblogs.com/biglucky/p/4057437.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!