Linux内核深度解析之中断、异常和系统调用——中断下半部

中断下半部

Linux中断下半部有3种:软中断(softirq)、小任务(tasklet)和工作队列(workqueue)。3种下半部的区别:

(1)软中断和小任务不允许睡眠;工作队列是使用内核线程实现的,处理函数可以睡眠

(2)软中断的种类是编译时静态定义的,在运行时不能添加或删除;小任务可以在运行时添加或删除

(3)同一种软中断的处理函数可以在多个处理器上同时执行,处理函数必须是可以重入的,需要使用锁保护临界区;一个小任务同一时刻只能在一个处理器上执行,不要求处理函数是可以重入的

猜你喜欢

转载自blog.csdn.net/linuxweiyh/article/details/106955055