Binder的作用
Binder主要用于进程间的通信(IPC)。
Binder的架构
Binder采用的是C/S架构(Client/Server架构)。
发送消息的是Client,接收消息的Server。
Binder机制
Client和Server分别属于不同的进程,二者需要ServiceManager来配合完成通信。
Server向ServiceManager注册服务,注册过程是在Binder驱动的全局链表(binder_procs)插入Server端信息,ServiceManager的svcinfo列表则是来缓存这些注册过的服务。
Client通过BinderProxy将请求参数传递给ServiceManager。
ServiceManager在svcinfo表中查询到Server端注册过的服务并返回Server端的代理。
Client拿到Server端的代理对象,就可以调用Server端的方法了。
这样就实现了Client与Server跨进程通信了。
本文介绍了Binder的作用、架构和机制。Binder主要用于进程间通信(IPC),采用C/S架构,Client和Server分属不同进程,需ServiceManager配合完成通信。Server向ServiceManager注册服务,Client通过BinderProxy传递请求,ServiceManager查询并返回Server代理,实现跨进程通信。

204

被折叠的 条评论
为什么被折叠?



