美文网首页
Android艺术探究二次学习笔记(二)

Android艺术探究二次学习笔记(二)

作者: 过期的薯条 | 来源:发表于2019-10-07 11:02 被阅读0次

1.引言

android艺术探究第二章,讲述了跨进程通信的几种方式,aidl,socket,contentprivider。socket
和aidl 在近些年的工作中接触到过。aidl的本质是binder通信。这章 就学习下Binder

2.正题

2.1 java 层面的Binder 通信

首先需要知道的一点:client 跨进程调用一些service,肯定要在client端代码中获取到service的引用对象(通常是代理)。service处理完得到结果,也是通过client端的代理对象,调用其相应的方法,这样就形成一个闭环。下面是java层binder的流程:

image.png

代码对Binder驱动的调用流程分为:open,mmap,iotcl

open 函数 就是打开驱动,做驱动初始化

mmap是一种内存映射文件的方法,即将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系

ioctl 函数是用户空间和内核空间交互数据的方法

Binder架构图:

image.png image.png

相关文章

网友评论

      本文标题:Android艺术探究二次学习笔记(二)

      本文链接:https://www.haomeiwen.com/subject/mmkppctx.html