Android(安卓)Binder简介
16lz
2021-12-04
Android使用Linux的进程管理机制,以进程为单位分配虚拟地址空间。为了安全考虑,Android的不同进程之间是相互隔离的(进程之间被禁止直接交互)。如果进程间需要通信,必须通过Android的Linux内核提供的IPC机制实现间接通信。Linux使用的进程间通信有Socket、Signal、Pipe、Message Queue、Semaphore、Shared Memory等。但是,这些IPC机制要么效率低下要么不适合封装给上层复用,所以取而代之的是使用Binder。
Binder是Android对Linux内核层的一个扩展,属于一个字符驱动设备,Android便是通过这个驱动程序实现不同进程之间的间接通信。Android通过对Binder驱动的封装,提供了一套Binder操作的框架,以便暴露给上层使用。这样Binder的概念便不仅仅是一个驱动,而是被拓展为一种架构。通过这种架构,Binder实际上成为了“框架的框架”,Binder框架分成Native层和Java层。
更多相关文章
- 从NDK在非Root手机上的调试原理探讨Android的安全机制
- android实现进程注入
- Android体系结构
- 初识Android
- Gradle for Android(安卓)Developers (二): PackageName 与 Appli
- Android核心分析(20)----Android应用程序框架之无边界设计意图
- Android进程间通信--消息机制及IPC机制实现
- 全家桶!阿里P8大佬熬夜15天,把所有Android第三方库整理成了PDF,附第
- 从零开始--系统深入学习android(实践-让我们开始写代码-Android框