欢迎访问ic37.com |
会员登录 免费注册
发布采购

连接器(Netlink Connector)及其应用

日期:2008-1-25标签: (来源:互联网)

一、引言

连接器是一种新的用户态与内核态的通信方式,它使用起来非常方便。本质上,连接器是一种netlink,它的 netlink 协议号为 NETLINK_CONNECTOR,与一般的 netlink 相比,它提供了更容易的使用接口,使用起来更方便。目前,最新稳定内核有两个连接器应用实例,一个是进程事件连接器,另一个是 CIFS 文件系统。连接器核心实现代码在内核源码树的driver/connector/connector.c 和 drivers/connector/cn_queue.c 文件中,文件 drivers/connector/cn_proc.c 是进程事件连接器的实现代码,而 CIFS 连接器的实现则在该文件系统的实现代码中。连接器是一个可选模块,用户可以在配置内核时在设备驱动(Device drivers)菜单中选择或不选它。

任何内核模块要想使用连接器,必须先注册一个标识 ID 和回调函数,当连接器收到 netlink 消息后,会根据消息对应的标识 ID 调用相应该 ID 的回调函数。

对用户态而言,连接器的使用跟普通的 netlink 没有差别,只要指定 netlink 协议类型为NETLINK_CONNECTOR 就可以了。