求救,如何实现网卡和声卡之间连接处理 的字符设备
求救,如何实现网卡和声卡之间连接处理 的字符设备
由于工作关系,需要开发完成从网卡到声卡的数据处理以及传输。
把数据 NetCard driver <--> char device <--> SoundCard driver之间传输,而且在char device中还要涉及对NetCard和SoundCard的控制
而我刚刚接触驱动部分,总体上把握不够。
我个人的思路是 在网卡驱动里获取数据到另一个缓冲区sk_buff2,然后写个字符设备,让它去网卡的sk_buff2取数据,处理,然后,把数据丢给声卡,
但是怎么实现字符设备能够访问sk_buff2的缓冲区呢,而且通过什么方式实现数据传输给声卡呢,请大家指教。不要讲的太笼统,太宏观,因为我不怎么会才问的啊,
比如如果你讲可以用接口实现,那你就请讲下怎么用接口实现,能讲下原理更好。
最好讲细一点。谢谢
[ 本帖最后由 Nesicoro 于 2008-11-23 19:38 编辑 ]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
不太明白你为什么要这么做?需求是什么?
不可能把网卡所有的数据都丢给声卡吧?
不是的,数据分离很简单的,现在的问题不是数据分离的问题 是怎么把数据 NetCard driver <--> char device <--> SoundCard driver之间传输的问题,而且在char device中还要涉及对NetCard和SoundCard的控制,而我刚进入Linux 驱动开发,对内核 不了解 ,而且内核中的数据操作有很多限制,还要考虑时效和并发问题,大家提供个思路啊
[ 本帖最后由 Nesicoro 于 2008-11-23 19:27 编辑 ]
增加buffer这个方式不可取
在内核中收到数据后,可以创建一个tasklet来完成这个数据的投递。
我觉得可以在内核中创建一个tasklet来实现数据的投递
kns1024wh ,请问为什么不能用sk_buffer方式呢?
dreamice,能详细介绍一下tasklet我刚看了一下tasklet大部分是涉及中断处理的,跟我做的貌似没有联系啊
大家集思广益,踊跃发表意见啊
谁帮我啊 --