Android Binder实现的进程间IPC过程概要
2016-02-20 16:11
489 查看
Binder实现的进程间IPC过程概要
Binder成为linux的设备驱动ServiceManager成为服务管理者,Binder描述符为0
服务端进程通过特定的Binder描述符0和binder驱动向ServiceManager进程注册服务
客户端进程通过特定的Binder描述符0和binder驱动向ServiceManager进程获取服务进程的Binder描述符
客户端进程通过拿到的服务端进程的Binder描述符和binder驱动,向服务端进行发起请求
服务端进程接收到消息后,进行相应的处理。
接下来将根据上述步骤,逐步分析Android IPC通信的过程。
Created with Raphaël 2.1.0binder进程通信clientclientbinderbinderserverserver目标服务的binder标示符以及数据根据binder标示符找到对应的binder_node将数据拷贝到内核地址空间中,同时将该实际的物理地址映射到目标进程的地址空间中封装成一个binder_work,将其放入到todo队列中,同时唤醒目标进程唤醒取出数据,进行相应的操作
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories