Yinchen 的博客
首页
分类
归档
关于
首页
分类
归档
关于
登录
标签:内存映射
清除筛选
Binder(四):mmap 原理:Binder 一次拷贝的底层机制
2026/08/21
Android系统
一、mmap 是什么 1.1 内存映射的定义 mmap 是 Linux 提供的一个系统调用(用户态程序请求内核代为执行某项工作的入口),作用是把进程的一段虚拟内存区域和一个具体的对象关联起来。这个对象可以是磁盘上的文件,也可以是内核分配的一批物理内存。关联建立之后,用文件的内容初始化这块虚拟内存区域,进程读写这段地址就等于读写那个对象。 这里的虚拟地址是进程眼里的地址编号,不装数据;数据躺在物理内
Binder(三):Binder 如何做到一次拷贝,接收方与内核的共享区域
2026/08/21
Android系统
一、面试题:一次拷贝是怎么做到的 1.1 问题由来 上一篇讲 Binder 相对传统 IPC 的三点优势,第一条就是数据只拷贝一次。面试题接着往下追:既然管道、消息队列、Socket 都要拷两次,Binder 凭什么少一次,那一次省在哪里。 答案不在 Binder 自己身上。它没有发明新的数据搬运方式,只是把「谁和谁共享内存」这件事重新安排了一遍。 1.2 关键词:mmap 绕不开的机制是 mma
Binder(二):Binder的优势,一次拷贝、易用与安全
2026/08/21
Android系统
一、Linux 有 IPC,为什么 Android 还要再造 Binder 1.1 Linux 的 IPC 全家桶 Android 跑在 Linux 内核上,而 Linux 早就备齐了 IPC(Inter-Process Communication,进程间通信)手段:管道、Socket、信号、消息队列、共享内存,每一种都有几十年的工程验证。谷歌却在这之外单独造了 Binder,并把它做成 Andr