对Binder机制的理解
答:直观来说,Binder是android中的一个类,它实现了IBinder接口,是android中实现跨进程通信的手段。该通信方式在Linux中没有。
Binder的组成:在Android系统的Binder机制中,是由Client、Service、Service Manager 和 Binder驱动程序 组成的。其中Client、Service、ServiceManager运行在用户空间, Binder驱动程序 是运行在内核空间 的。而Binder就是把这4种组件 粘合在一块的粘合剂, 其中核心的组件是Binder驱动程序, Service Manager提供辅助管理的功能,而Client、Service正是在Binder驱动程序 和 Service Manager提供的基础设施上实现的 C/S 之间的通信。
至于为什么要使用Binder呢???
答:1.历史原因。最后发现Binder做android进程间通信时很合适,就使用了。 2.自身有优点。Binder实现进程间通信时,在安全性 和 效率方面,都比较好,适合用在android中。
Binder机制内部是怎么实现的???
答:共享内存。
AIDL是基于Binder实现的。