Android Binder简介
2024-10-08 02:14:08
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层。
最新文章
- java表格的使用 单元格绘制二
- php常见问题以及解决方法
- Blackfin DSP(五):BF533的SPI接口
- [linux]记录如何设置一个新的vps
- getComputedStyle()与currentStyle
- GetLastInputInfo计时用户离开电脑及软件在指定时间锁定等(转)
- OAuth2.0详解
- 湖南省第八届大学生程序设计大赛原题 D - 平方根大搜索 UVA 12505 - Searching in sqrt(n)
- jedis异常:NoSuchElementException: Timeout waiting for idle object
- SQLite学习网址
- 一元线性回归分析及java实现
- Floating IP in OpenStack Neutron
- 使用fontawesome图标
- fetch知识点汇总
- SSM学习(一)搭建基础框架
- MySQL安装后无法用root用户访问的问题
- MongoDB with D3.js
- 字符串匹配(二)----KMP算法
- C# Note36: .NET unit testing framework
- leetcode538. Convert BST to Greater Tree