Binder 学习之一

      Binder由Service Server(含有Android的服务)、Service Client(使用服务的客户端)、Context Manager(确定服务的位置),以及Binder Driver四大部分组成。就像组件一样,Android提供的各种功能被细分成一些具有特定功能的服务。并且,使用服务的进程通过IPC数据与服务进行相关作用。

Binder就像连接Android各种服务的环扣,处于中心的是Binder Driver。在使用框架服务或应用程序服务的过程中,Android提供了很多接口,隐藏了Binder Driver的复杂的行为动作。Android使用更高层次的抽象隐藏了处于底层的Binder Driver,并且提供了丰富的接口,让我们使用起来更方便。


Android是基于Linux内核的操作平台,Android进程与Linux进程一样,它们只运行在进程固有的虚拟地址空间中,一个4GB的虚拟地址空间,其中3GB是用户空间,剩余的1GB是内核空间(可通过内核设定修改).各个进程拥有各种独立的用户空间,但内核空间是共享的。进程间通信就是通过内核空间来实现,两个进程通过内核空间,互相交换信息,实现IPC通信。


参考《Android框架揭秘》

你可能感兴趣的:(Binder 学习之一)