美文网首页
深入理解Binder

深入理解Binder

作者: 嘉伦哥 | 来源:发表于2020-03-22 22:46 被阅读0次

什么是Binder

binder 是Android 系统提供的一种IPC(进程间通讯)机制之一。由于Android 是基于Linux内核的,因此,除了binder以外,还存在其他的IPC机制。比如:管道、socket、广播等。而binder 相对于其他的IPC机制来说,更加轻巧方便,但是确实最复杂的一个。 而binder起到的作用就是,整个Android 系统基本可以看作是一个基于Binder通信的C/S架构。Binder就像网络一样,把系统部分连接在了一起。

什么是C/S架构

新建 PPT 演示文稿_01.png

C/S 架构其实就是 Client、Server和ServiceManager 三者间交互的一种架构。
从上图交互箭头可以知道:

  • Server进程手首先要注册一些服务(server)到ServiceManager中,此时,Server此刻就是ServiceManager的客户端,而ServiceManager就是服务端了。
  • 如果某个Client 进程想使用某个Server就必须先到ServiceManager中获取Server的信息,此时,Client此刻就是ServiceManager的客户端,而ServiceManager就是服务端了。
  • 如果Client得到 Server的信息后 与Server所在的进程建立了通信,那么此刻Client 就是Server的客户端,而Server就成了服务端了。

以上就是C/S 架构中三者的关系,而三者之间的通信呢,都是基于Binder通信的,所以,通过任意两者之间的的关系,都能解开Binder的奥妙。

。。。。未完待续

相关文章

网友评论

      本文标题:深入理解Binder

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