工作队列分析

本文深入剖析Linux内核中的工作队列机制,包括其结构定义、创建过程、线程创建流程、工作插入及执行机制等内容。通过详细的步骤说明与代码示例帮助读者理解这一重要的调度机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、用法 
 

工作队列的使用很简单。
 1.首先是建立一个工作队列: 

 
 2.然后就是在这个队列中insert你所要做的“工作”:

初始化有两种方法。
一种为静态方法:


另一种为动态方法:



二、执行过程
create_workqueue() -> __create_workqueue()



create_workqueue() -> __create_workqueue() -> create_workqueue_thread()


create_workqueue() -> __create_workqueue() -> create_workqueue_thread() -> worker_thread()


create_workqueue() -> __create_workqueue() -> create_workqueue_thread() 
 -> worker_thread() -> run_workqueue()

三、工作线程创建的详细过程
   create_workqueue() -> __create_workqueue() -> create_workqueue_thread() 
 -> kthread_create()



create_workqueue() -> __create_workqueue() -> create_workqueue_thread() 
 -> kthread_create()-> keventd_create_kthread()

四、插入“工作”

 

转自:http://www.chinaunix.net/jh/4/882951.html 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值