work queue 跟tasklet 不同
1. work queue 运行环境的是内核线程,所以可以休眠,可以分配内存,获得信号量,执行阻塞I/O
2. tasklet 的运行环境是软中断,所以不能休眠。
3. tasklet的使用跟timer类似,可以嵌套登记,都可以用在中断处理程序中。tasklet 与timer不同的地方在于它的运行时刻是不确定的时刻。
本文探讨了Linux内核中的Workqueue与Tasklet的区别。Workqueue以内核线程形式运行,支持休眠、内存分配及阻塞I/O操作;而Tasklet运行于软中断上下文,无法进行休眠,并介绍了其与定时器的相似之处及其不确定性执行特点。
work queue 跟tasklet 不同
1. work queue 运行环境的是内核线程,所以可以休眠,可以分配内存,获得信号量,执行阻塞I/O
2. tasklet 的运行环境是软中断,所以不能休眠。
3. tasklet的使用跟timer类似,可以嵌套登记,都可以用在中断处理程序中。tasklet 与timer不同的地方在于它的运行时刻是不确定的时刻。

被折叠的 条评论
为什么被折叠?