我最近开始阅读工作队列以及在Linux内核中创建工作队列所涉及的代码。
工作队列基本上是在多个CPU上调度工作,以便根据队列同时执行一系列任务。
我们create_*workqueue()
已被删除,现在被alloc_*workqueue()
替换
在工作队列here.的文档中给出了几个标志。alloc_*workqueue
中使用了这些标志
虽然我阅读了Linux内核提供的文档,但我对WQ_MEM_RECLAIM标志的工作原理还不太清楚。
什么是queue_delayed_work()
,__cancel_delayed_work()
和mod_delayed_work()
以及它们与create/alloc_*workqueue
注意:我是Linux内核的新手,对操作系统知之甚少,所以请耐心等待,并尽可能简化解释。