linux驱动学习--第十七天:第十章 Linux 中断与时钟 (二)概念、流程和框架(2013-06-19 22:31)

来源:互联网 发布:淘宝宝贝刷收藏软件 编辑:程序博客网 时间:2024/05/24 03:54

硬中断、软中断和信号的区别:

 

硬中断是外部设备对CPU 的中断,

 

软中断通常是硬中断服务程序对内核的中断,

 

而信号则是由内核(或其他进程)对某个进程的中断。

 

 

Linux 的中断处理分为两个半部,顶半部处理紧急的硬件操作,底半部处理不紧急的耗时操作。tasklet
和工作队列都是调度中断底半部的良好机制,tasklet 基于软中断实现。内核定时器也依靠软中断实现。
内核中的延时是忙等待或者睡眠等待,为了充分利用CPU 资源,使系统有更好的吞吐性能,在对延迟
时间的要求并不是很精确的情况下,睡眠等待通常是值得推荐的。