Android基于linux内核,然而却没有才有unix丰富的进程间通信,而是基于OpenBinder来实现。
在Binder机制中,由Client、Server、Service Manager和Binder驱动程序四个组件组成,其中Client、Server和Service Manager运行在用户空间,Binder驱动程序运行内核空间。Service Manager和Binder驱动已经在Android平台中实现好,开发者只要按照规范实现自己的Client和Server组件就可以了 。Binder驱动程序提供设备文件/dev/binder与用户空间交互,Client、Server和Service Manager通过open和ioctl文件操作函数与Binder驱动程序进行通信。 Service Manager是一个守护进程,用来管理Server,并向Client提供查询Server接口的能力,即Client和Server之间的进程间通信通过Binder驱动程序间接实现。