【发布时间】:2010-09-01 00:28:10
【问题描述】:
有没有一种方法可以让在用户模式下运行的应用程序可以在内核模式下与另一个应用程序通信。
例如,我想从网络驱动程序收集一些信息,并提供给它一些在用户级别运行的嗅探器应用程序。
我该如何进行。请指教。
【问题讨论】:
-
您需要网络驱动程序提供哪些内容,而现有内核(通过 AF_PACKET 套接字)无法在用户空间中捕获这些内容?
有没有一种方法可以让在用户模式下运行的应用程序可以在内核模式下与另一个应用程序通信。
例如,我想从网络驱动程序收集一些信息,并提供给它一些在用户级别运行的嗅探器应用程序。
我该如何进行。请指教。
【问题讨论】:
一种创建字符/块设备驱动程序的方法。然后,您的应用程序可以使用常规 IO 调用,例如 open、read、write、ioctl 等。
http://www.networkcomputing.com/unixworld/tutorial/010/010.txt.html
【讨论】:
还有 sysfs、procfs、debugfs、netlink... char/block 设备可能是你想要的。
【讨论】: