Binder模式的理解

序:两个对象可以互相访问,前提是两者都存在于相同的内存地址空间中。如果两个对象存在不同的进程,即处于不同的内存地址空间中,那么只能通过跨进程的方式去互相访问。传统的跨进程访问方式很多,比如:Sockert、管道、共享内存空间等等。传统的方式都是基于Linux,而安卓也是基于Linux,为什么不使用传统的跨进程方式,而要开发出新的方式 Binder模式?这是因为传统模式 存在性能或者安全性的不足,而Binder模式解决了传统的模式的不足,在安全性上又有保障。


同进程访问


跨进程访问


2.Binder模式的宏观展现

    Binder模式主要涉及到四大模块:BinderClient,BinderServer,Binder Driver,ServerManager。

BinderClient:客户端使用,相当于我们的客户端PC。

BInderServer:相当于服务器。

ServerManager:相当于Dns服务器。

BinderDriver:相当于路由器。


四大模块

Android的Binder机制是一个庞大的体系模块,上面将整个Binder机制概况了一遍,其中并没有涉及具体的逻辑代码,看似简单,实际上要复杂的多。对于开发者来说,这么底层的东西,没必要太过于接触。

3.具体例子 AIDL

    具体代码细节不细述。


调用方法流程
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容