10 2020 档案

摘要:1 概述 Generic Netlink 是内核专门为了扩展netlink协议簇而设计的“通用netlink协议簇”。由于netlink协议最多支持32个协议簇,目前Linux4.1的内核中已经使用其中21个,对于用户需要定制特殊的协议类型略显不够,而且用户还需自行在include/linux/ne 阅读全文
posted @ 2020-10-12 22:38 Action_er 阅读(3318) 评论(0) 推荐(0)
摘要:1 netlink初始化 2 内核netlink创建 3 应用层netlink创建 4 应用层向内核发送消息 5 应用层接收内核消息 6 内核向应用层发送消息 7 内核和应用层netlink通信实例 7.1 应用层代码实例 1 /*应用层代码*/ 2 #include <sys/stat.h> 3 阅读全文
posted @ 2020-10-11 19:44 Action_er 阅读(1006) 评论(0) 推荐(0)
摘要:1主要数据 定义位于:linux-4.9.73\include\uapi\linux\netlink.h 1.1 struct nlmsghdr 表示netlink消息报头。netlink消息同TCP/UDP消息一样,也需要遵循协议要求的格式,每个netlink消息的开头是固定长度的netlink报 阅读全文
posted @ 2020-10-11 18:16 Action_er 阅读(4839) 评论(0) 推荐(1)
摘要:系统调用在内核中的入口都是sys_xxx,但其实Linux的系统调用都改为SYSCALL_DEFINE定义的。本文以socket系统调用为例来详解。 1 首先看一下SYSCALL_DEFINE的定义,如下: 1 #define SYSCALL_DEFINE0(name) asmlinkage lon 阅读全文
posted @ 2020-10-11 12:24 Action_er 阅读(2524) 评论(0) 推荐(0)
摘要:Netlink 是一种IPC(Inter Process Commumicate)机制,它是一种用于内核与用户空间通信的机制,同时它也以用于进程间通信(Netlink 更多用于内核通信,进程之间通信更多使用Unix域套接字)。在一般情况下,用户态和内核态通信会使用三种传统的通信方式: 1 ioctl 阅读全文
posted @ 2020-10-09 22:24 Action_er 阅读(4572) 评论(0) 推荐(0)