Android系统中进程间通讯(IPC)的一种方式,Android中ContentProvider、Intent、aidl都是基于Binder
内存管理
Binder最大只能传1M的数据,因为Binder驱动只预留了一段1M大小的虚拟地址
mmap中定义BINDER_VM_SIZE为1M,Binder数据需要跨进程传递,需要在内核上开辟空间,所以允许在Binder上传递的数据不是无限大的
Binder 架构
通信采用C/S架构,包含Client、 Server、 ServiceManager 以及 Binder 驱动
在 framework 层进行了封装,通过 JNI 技术调用 Native(C/C++)层的 Binder 架构
在 Native 层以 ioctl 的方式与 Binder 驱动通讯
注册服务端
通过 Servi