Android 面试必备:Android多进程间通信—Binder机制

Posted 程序员-吴彦祖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 面试必备:Android多进程间通信—Binder机制相关的知识,希望对你有一定的参考价值。

android多进程通信的应用场景?

1.保活
2.webview
3.加载图片
4.push推送
5.与系统服务通信

加载大图片为什么会OOM?

APP多进程的优点

1.扩大应用可使用的内存
手机内存6G,系统分配给虚拟机的内存一般32M、48M、64M,使用多进程时,可以使用一个进程专门加载图片,防止OOM。
2.子进程崩溃,不会导致主进程崩溃
3.互相保活,即如果子进程被系统kill掉时,主进程拉起子进程。主进程被系统kill掉时,子进程拉起主进程。

App多进程的缺点

多进程通信原理

Android进程是运行在系统分配的虚拟地址空间,虚拟地址空间分为用户空间和内核空间。多进程间,用户空间不共享,内核空间共享,进程间通过共享的内核空间通信。

多进程通信有哪些方式?

1.传统的IPC方式:socket,内存共享。
2.Android特有的方式:Binder。

Binder相对其他IPC方式优点/为什么使用Binder?

1.性能:
A.Socket传输数据的过程:两次拷贝

B.Binder传输数据的过程:一次拷贝

内存映射:MMAP(memory map)

虚拟内存和物理内存

虚拟内存映射到物理内存,物理内存存储数据。

2.易用性

3.安全性

Binder在Android系统CS通信机制中起到的作用
Android C/S通信机制

Binder机制的关键概念

Binder在Android CS通信机制中起到的作用

AIDL和Binder的关系?

AIDL封装了Binder,AIDL调用Binder

Android高级面试题及答案解析—Binder篇

需要这份Android高级面试题及答案解析的小伙伴可以点击下方卡片免费领取!保证免费分享!

以上是关于Android 面试必备:Android多进程间通信—Binder机制的主要内容,如果未能解决你的问题,请参考以下文章

Android面试必备的JVM虚拟机制详解,看完之后简历上多一个技能!

Android 组件化面试必备

求职与面试:Android必备

图文结合:通俗易懂的Android多进程间通信--binder机制

2022金三银四Android面试必备知识点:Android AMS/WMS/Binder/Hander

Java多线程面试题(面试必备)