char设备驱动程序中的套接字通信

时间:2016-06-18 08:01:58

标签: c sockets linux-device-driver

从linux中的char设备驱动程序的内核模块打开socket是否可行?我试图通过网络模拟char设备的输出/输入流。但据我搜索从char设备打开套接字是不可能的?从char设备驱动程序访问udp / tcp端口的任何其他选项?

1 个答案:

答案 0 :(得分:0)

是的,您可以在内核代码中打开套接字并与远程主机通信,一个生动的例子是NFS模块,它使用sunrpc作为协议,并且它们都在内核模块中运行

首先,查看kernel_connect [1]以开始连接,并kernel_sock_shutdown关闭连接。 socket.c中有完整的apis列表。

[1] http://lxr.free-electrons.com/source/net/socket.c#L3212

[2] http://lxr.free-electrons.com/source/net/socket.c#L3298

[3] http://lxr.free-electrons.com/source/net/socket.c