目的
中断中可能没办法很快的处理完需要做的事,导致关中断时间过长,cpu效率下降,因此,引入中断的上下部分。上部分处理紧急事务(负责响应中断),其余的(中断服务程序)交给中断下半部。
上半部分
主要负责响应中断,这个part的关中断是关闭整个cpu的中断,即这个part是不会被任何打断的,因此它处理起来很快。具体:把剩下的、复杂的服务程序挂到下半部的队列上去,让下半部分慢慢处理。
下半部分
这个part可以被中断,即不需要关整个cpu的中断。具体实现方法:软中断、tasklet和等待队列。
(补充)硬中断与软中断
硬中断:外设引发的,是强行中断cpu,
软中断:由当前正在运行的进程所产生,是一种中断指令,这种中断是一种需要内核为正在运行的进程去做一些事情(通常为I/O)的请求。
tasklet:本质使用了软中断