Linux进程划分
用户空间
内核空间
用户空间是不共享的空间,内核空间是共享的空间,所以两个用户空间传递数据就需要内核空间
先从用户空间到内核空间,调用copyfromuser
再从内核空间到用户空间,调用copytouser
整个进程间通信需要两次拷贝
binder基于mmap,可以实现进程间通信只需一次拷贝。
Binder client-server模型
1.Server进程通过Binder驱动向ServicerManager注册服务
2.client进程使用某个service前,通过Binder驱动向ServiceManager获取服务信息
3.client进程根据service信息,通过Binder驱动建立与该service所在server进程通信链路,使用服务。
优点
1.高效
一次拷贝
2.安全
有身份验证
3.使用简单
CS架构
网友评论