Android为什么使用Binder-android学习之旅(101)
16lz
2021-01-23
基础知识
Android进程和linux进程一样,他们只运行在进程固有的虚拟空间中。一个4GB的虚拟地址空间,其中3GB是用户空间,1GB是内核空间 ,用户空间是非共享的,内核空间是共享的,如下图:
inux本身就提供了IPC工具,但是android中的Binder功能更丰富,不仅可以用来实现进程件的IPC通信,还可以用来调用另一个进程的函数,支持RPC操作,Binder使用运行在内科空间中的抽象驱动程序Binder(IPC) Driver,来实现进程间的通信,如下图:
Android使用Binder机制的原因有两个:
1.首先Binder采用了linux的优秀的内存管理技术,在通过内科空间传递数据时,能保证数据的正确性。
2.使用用户空间无法访问的内存空间来交换数据,保证了IPC的安全性
至于具体的介绍如下:
Android Binder IPC详解
更多相关文章
- Android中的任务和进程详解
- Android中的进程简介(可见进程,前台进程,后台进程等)
- 将Unity3D项目导出到Android工程中二次开发并实现之间的数据交互
- android连接onenet之获取onenet数据流和更新onnet数据流
- AMS 深入了解(一、进程管理)(and5.1)
- android中的跨进程通信的实现——远程调用过程和aidl(转)
- Android如何用json格式传数据到后台(SSM) 做一个简单的登录流程
- android中的跨进程通信的实现(一)——远程调用过程和aidl