最新版netlink的使用方法.docVIP

  • 11
  • 0
  • 约9.65千字
  • 约 15页
  • 2023-09-16 发布于广东
  • 举报
《netlink的使用方法》 在Linux 2.4 版以后版本的内核中,几乎全部的中断过程与用户态进程的通信都是使用netlink 套接字实现的,著名的内核包过滤框架Netfilter 在与用户空间的通读,也在最新版本中改变为netlink,无疑,它将是Linux 用户态与内核态交流的主要方法之一。它的通信依据是一个对应于进程的标识,一般定为该进程的ID。当通信的一端处于中断过程时,该标识为0。当使用netlink 套接字进行通信,通信的双方都是用户态进程,则使用方法类似于消息队列。netlink 套接字的最大特点是对中断过程的支持,它在内核空间接收用户空间数据时不再需要用户自行启动一个内核线程,而是通过另一个软中断调用用户事先指定的接收函数。这样就可以保证数据接收的实时性。 当netlink 套接字用于内核空间与用户空间的通信时,在用户空间的创建方法和一般套接字使用类似,但内核空间的创建方法则不同。 用户空间 用户态应用使用标准的socket 与内核通讯,标准的socket API 的函数,socket(, bind(,sendmsg(, recvmsg( 和close(很容易地应用到netlink socket。 为了创建一个netlink socket,用户需要使用如下参数调用socket(: socket(AF_NETLINK, SOCK_RAW, netlink_type

文档评论(0)

1亿VIP精品文档

相关文档