Android P系统内核与用户进程通信–Netlink
以下代码,都是以android p系统里的代码作为demo说明。
本文只讲一个大概的流程,只分析通信的一个过程,不深入解析具体的数据结构和传递的参数。
用户进程使用 netlink
用户态使用标准的socket APIs,其包含的接口有:socket() , bind() , sendmsg() , recvmsg() , close() ,sendto(),recvfrom()等。
使用步骤:
1、使用接口:socket(),创建一个 netlink socket
mSockFd = socket(AF_NETLINK, SOCK_RAW, PROTOCOL_ID);
2、使用接口:bind(),用于将打开的socket地址(用户socket)与netlink源socket(内核socket)绑定在一起
retVal = bind(mSockFd, (struct sockaddr *)&servAddr, sizeof

本文详细介绍了AndroidP系统中用户进程与内核通过Netlink进行通信的过程。用户进程使用socket()、bind()、sendto()、recvfrom()和close()等标准socketAPIs创建并操作Netlinksocket。内核则利用netlink_kernel_create()、netlink_unicast()、netlink_broadcast()和sock_release()等接口实现消息的接收和发送。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



