Android Binder系统的理解。

以下是本人学习部分binder系统后自己对binder系统总体的想法领悟。欢迎各位大神指正。 
把binder驱动系统比作中介 ,把client比作需要找工作的工人,把server比作工厂,把service比作工作岗位。

工人(client)端:
工人通过电话打通中介(binder_open函数),然后用bio_init  bio_put_xxx函数组织语言,然后告诉中介自己需要什么具体的工作(binder_call函数,code代表具体的工作也就是要调用的函数),通过binder_get_xxx系列函数得到中介返回的信息,最后调用binder_done函数结束通话。

工厂(server)端:类似工人。不同的地方是它告诉中介它可以提供工作岗位。

中介:当中介接到工人的请求找什么具体工作(对应code)会把这个请求告诉工厂,工厂接收到中介的信息会查找自己厂里有没有这种工作岗位,如果有则会告诉中介然后工人顺利找到自己想要的工作(调用相应的函数实习目的)。

工人 工厂 和中介说话是通过binder_call函数实现的(client server 和binder驱动通信是用binder_call函数实现的) server要先于client运行,否则client获取服务会失败。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值