Binder进程间通信机制的Client进程和Server进程的通信过程

               Binder进程间通信机制的Client进程和Server进程的一次进程间通信过程可以分为6个步骤。

1. Client进程想Binder驱动程序发送一个BC_TRANSACTION命令协议。

2. Binder驱动程序根据协议内容找到Server进程之后,向Client进程发送BR_TRANSACTION_COMPLETE返回协议,表示进程间通信请求已经被接受。Client进程接受到Binder驱动程序发送的BR_TRANSACTION_COMPLETE返回协议并处理完成后会再次进入到Binder驱动程序中去等待目标Server进程返回的进程间通信结果。

3. Binder驱动程序向Client进程发送BR_TRANSACTION_COMPLETE返回协议的同时向目标进程Server进程发送BR_TRANSCTION返回协议,请求目标进程处理该进程间通信请求。

4. Server进程接收到Binder驱动程序发来的BR_TRANSACTION返回协议并处理之后,就会向Binder驱动程序发送BC_REPLY命令协议。

5.Binder驱动程序根据协议内容找到目标Client进程之后,想Server进程发送BR_TRANSACTIION_COMPLETE返回协议,表示进程间通信数据结果已经收到。Server进程收到Binder驱动程序发送给它的BR_TRANSACTION_COMPLETE返回协议之后,一次进程间通信请求就结束了,接着会进入到Binder驱动程序中去等待下一次通信请求。

6. Binder驱动程序向Server进程发送BR_TRANSACTION_COMPLETE返回协议的同时,也会向目标进程Client进程发送BR_REPLY返回协议,表示Server进程已经处理完它的通信请求了,并且进程间通信的结果返回给它。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值