嵌入式Linux驱动开发:工作队列基础与应用.pdfVIP

  • 2
  • 0
  • 约1.68千字
  • 约 3页
  • 2026-04-18 发布于北京
  • 举报

嵌入式Linux驱动开发:工作队列基础与应用.pdf

一.工作队列的基础概念

1.什么是工作队列?

工作队列(workqueue)是实现中断下文的机制之一,是一种将工作推后执行的

形式。那工作队列和我们之前学的tasklet机制有什么不同呢?tasklet也是实现中断

下文的机制。他们俩个最主要的区别是tasklet不能休眠,而工作队列是可以休眠的。

所以,tasklet可以用来处理比较耗时间的事情,而工作队列可以处理非常复杂并且更

耗时间的事情。

2.工作队列(workqueue)的工作原理

Linux系统在启动期间会创建内核线程,该线程创建以后就处于sleep状态,

然后这个线程会一直去队列里面读,看看有没有任务,如果有就执行,如果没有就休

眠。工作队列的实现机制实际上是非常复杂的,初学阶段只需要了解这些基本概念接

口。

类比理解:

流水线上的机械:Linux系统自动会创建一个。多种不同的物料使用同一个流水线机械,

那么这个就是共享工作队列的概念。

如果当前的流水线机械不能满足我们加工的物料,我们是不是就需要重新定制一台流水

线机器呢,这个就是自定义工作队列的概念

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档