Several questions need to know for understanding Binder

1. Binder由哪几部分组成

     1)在Android系统的分层结构中,Binder在每一层的对应结构, Framework/Native/HAL/Kernel

     2)在同一层各个部分又由哪几部分组成?

2. Binder各层在整个Binder架构中担当的角色是什么?

3. interface_cast实质是什么,Android中将Binder通过面向对象的继承关系组织到一起,相互转化,能够这样相互转化的实质是什么?

    实质就是内存对其。

4. Binder结构,在每次asInterface之后,得到的到底是谁的(Proxy端的对象还是Native端的对象)的Interface引用,说到底就是remote()方法或mRemote成员到底是谁的引用?

    看看IMPLEMENT_META_INTERFACE和queryLocalInterface也许可以帮助你回答这个问题,实际上你得到的是一个Bp的对象。

5. Proxy的对象如何最终转到Native的对象?实质是Proxy引用如何最终能调用Native端的方法?

    IPCThreadState::transact这个方法也许可以帮你回答这个问题。

6. Binder驱动到底干了什么?

    提示:Binder两端一般都分属于不同的进程,但无论是Binder实体还是对实体的引用都从属与某个进程,都不能透明地在进程之间传输,那驱动就是一个翻译。

7.How to use Binder implement ourselves Application?

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值