初识 Binder
Binder 是通过 Linux 的 Binder Driver 来实现的, Binder 操作类似于线程迁移
( Thread migration ),两个进程间通信看起来就像是一个进程进入另一个进程去执行代
码,然后带着执行的结果返回。同时 Binder 机制是基于 OpenBinder 来实现的,是一个
OpenBinder 的 Linux 实现, android 系统的运行都是将依赖 Binder 驱动。( OpenBinder 组
件架构是一个系统 , 主要提供一个高层抽象上传统的现代操作系统服务。当前实现运行在 Linux, 但是代码运行在一个不同的平台。)
Binder 的驱动原理
为了完成进程间通信, Binder 采用了 AIDL ( Android Interface Denition
Language )来描述进程间的接口。在实际的实现中, Binder 是作为一个特殊的字符型设
备而存在的,设备节点为 /dev/binder, 其实现遵循 Linux 设备驱动模型,实现代码主要涉
及以下文件:
kernel/driver/staging/binder.h
kernel/driver/staging/binder.c
评论2
最新资源