社区
驱动程序开发区
帖子详情
linux创建工作队列相关问题
weixin_41293394
2017-12-06 01:02:01
当在一个模块中创建一个工作队列INIT_WORK()后,通过查资料得知对工作调度有两种方式:schedule_work()马上调度;schedule_delayed_work()延迟一段时间后调度。我的需求是在 echo XXX > /proc/test 时调度,这种方式怎么写?请给出大致框架和需要用到的函数,谢谢。
...全文
1382
2
打赏
收藏
linux创建工作队列相关问题
当在一个模块中创建一个工作队列INIT_WORK()后,通过查资料得知对工作调度有两种方式:schedule_work()马上调度;schedule_delayed_work()延迟一段时间后调度。我的需求是在 echo XXX > /proc/test 时调度,这种方式怎么写?请给出大致框架和需要用到的函数,谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
花开花落_fzu
2018-03-26
打赏
举报
回复
在你的模块中创建proc的entry,在你proc entry的write函数里执行调度。
jklinux
2017-12-10
打赏
举报
回复
不是很明白楼主的需求, schedule_work()/queue_work一般用于中断分成顶底半部的处理使用, 避免中断处理过久影响系统实时性的。但echo XXX > /proc/test 是由用户进程来触发,一个进程不会影响其它进程的,所以就用不着工作队列了
Linux
--MSMQ-.rar_MSMQ
Linux
平台_dsp消息
队列
_
linux
平台_
linux
消息
队列
_消息
队列
linux
平台下利用系统消息
队列
函数自己
创建
消息
队列
程序
msg.rar_
linux
消息
队列
_
linux
msgrcv_msg_消息
队列
msgrcv.c msgsnd.c
创建
消息
队列
实现信息交换通信
Linux
内核
工作
队列
1
Linux
workqueue
工作
队列
Linux
中的Workqueue机制就是为了简化内核线程的
创建
。通过调用workqueue的接口就能
创建
内核线程。并且可以根据当前系统CPU的个数
创建
线程的数量,使得线程处理的事务能够并行化。workqueue是内核中实现简单而有效的机制,他显然简化了内核daemon的
创建
,方便了用户的编程.它总是在进程上下问进行执行,并且可以执行中断下半部操作,允许重新调度和睡眠,可以解决软中断和tasklet执行时间过长导致的系统实时性下降等
问题
。 2
Linux
workq
linux
驱动35:
工作
队列
linux
驱动35:
工作
队列
linux
内核
工作
队列
内核
工作
队列
概述
工作
队列
(workqueue)是另外一种将
工作
推后执行的形式,
工作
队列
可以把
工作
推后,交由一个内核线程去执行,也就是说,这个下半部分可以在进程上下文中执行,最重要的就是
工作
队列
允许被重新调度甚至睡眠。
linux
workqueue
工作
原理
linux
系统启动期间会
创建
名为kworker/u:x(x是0开始的整数,表示CPU编号)
工作
者内核线程,该线程
创建
之后处于sleep状态。从调度器
驱动程序开发区
1,318
社区成员
2,173
社区内容
发帖
与我相关
我的任务
驱动程序开发区
主要是开发驱动技术
复制链接
扫一扫
分享
社区描述
主要是开发驱动技术
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章