主题 : 如何在内核驱动中使用多进程? 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 26332
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-08-06
最后登录: 2017-09-13
楼主  发表于: 2011-03-21 14:14

 如何在内核驱动中使用多进程?

Hi 大家好,

我要做一个I2C硬件的驱动,应用程序会向驱动模块发送一些数据,设备处理数据速度不快,还有可能因某种原因失败,需要过段时间再来处理。

我的想法是在驱动模块中使用链表,把应用程序发来的数据先保存起来,待合适的时候再来处理

我在驱动程序的末尾想通过fork/vfork创建个子进程,进一个循环,判断链表是否为空,但是编译的时候不通过,头文件也加上了,不知是什么原因

请各位高手来看看,在驱动中一般怎样实现多进程,谢谢!
级别: 新手上路
UID: 26332
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-08-06
最后登录: 2017-09-13
1楼  发表于: 2011-03-21 14:31
还是 在驱动中只做数据处理,其他的链表等移到应用程序中去处理?
^很多问题的背后都是简单的原因......
级别: 荣誉会员
UID: 34780
精华: 0
发帖: 1219
金钱: 6230 两
威望: 1246 点
综合积分: 2438 分
注册时间: 2010-12-21
最后登录: 2017-09-18
2楼  发表于: 2011-03-21 14:44
你可以使用kernel thread
你不能使用fork/vfork来创建子进程
级别: 新手上路
UID: 26332
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-08-06
最后登录: 2017-09-13
3楼  发表于: 2011-03-21 15:23
引用第2楼911gt3于2011-03-21 14:44发表的  :
你可以使用kernel thread
你不能使用fork/vfork来创建子进程

多谢,这个确实可以用