【发布时间】:2014-09-17 12:12:58
【问题描述】:
关于题目,内核需要向用户空间传输一些数据(小于1KB),而用户空间在收到内核的数据后也会传输一些数据(小于1KB)。我想知道一些效率高的解决方案。现在,我已经处理了netlink(双向通信)的问题。并且,我想使用信号(内核到用户)和系统调用来更有效地处理问题。可惜实时信号只能携带4B的数据,太小了。有没有更好的办法来解决这个问题?
【问题讨论】:
标签: performance kernel communication
关于题目,内核需要向用户空间传输一些数据(小于1KB),而用户空间在收到内核的数据后也会传输一些数据(小于1KB)。我想知道一些效率高的解决方案。现在,我已经处理了netlink(双向通信)的问题。并且,我想使用信号(内核到用户)和系统调用来更有效地处理问题。可惜实时信号只能携带4B的数据,太小了。有没有更好的办法来解决这个问题?
【问题讨论】:
标签: performance kernel communication
您可以选择共享内存吗?
【讨论】:
在我的项目中,我最终选择了netlink进行通信(传输命令)和mmap用于发送数据。linux内核和用户空间之间的通信有一些方法。点击here。我的项目最好的方法是netlink。信号不好,因为每次只能发送4B数据!
【讨论】: