当前位置: 首页 > news >正文

【Android知识笔记】进程通信(三)

在上一篇探索Binder通信原理时,提到了内存映射的概念,其核心是通过mmap函数,将一块 Linux 内核缓存区映射到一块物理内存(匿名文件),这块物理内存其实是作为Binder开辟的数据接收缓存区。这里有两个概念,需要理解清楚,那就是操作系统中的虚拟内存物理内存,理解了这两者我们才能够更清楚的理解为什么要内存映射。

所以本篇在下面会补充一些操作系统的虚拟内存方面相关的知识点。

一、虚拟内存概念

1. 虚拟内存与交换区

虚拟存储器的基本思想是:程序、数据、堆栈的总大小可以超过内存空间的大小,操作系统将当前运行的部分保存在内存中,未使用的部分保存在磁盘中。

比如一个16MB的程序和一个内存只有4MB的机器,操作系统通过选择可以决定哪部分4MB的程序内容保存在内存中,并在需要时,在内存与磁盘中交换程序代码,这样16MB的代码就可以运行在4MB的机器中了。

在这里插入图片描述

CPU在执行指令与数据时,获得的是虚拟内存的地址

http://www.lryc.cn/news/174227.html

相关文章:

  • 云上亚运:所使用的高新技术,你知道吗?
  • 数据结构简述,时间、空间复杂度,学习网站推荐
  • 在线安装qt5.15之后任意版本
  • 【kafka实战】01 3分钟在Linux上安装kafka
  • yum安装mysql8
  • 十五)Stable Diffusion使用教程:另一个线稿出3D例子
  • 2023icpc网络预选赛I. Pa?sWorD(dp)
  • maven本地安装jar包
  • QT中的inherits
  • 全国职业技能大赛云计算--高职组赛题卷①(容器云)
  • 基于springboot+vue的入校申报审批系统
  • 安卓逆向 - EdXposed LSPosed VirtualXposed
  • Linux三大搜索指令的区别
  • C++ -- 特殊类设计
  • 指针和数组笔试题的透析
  • 「UG/NX」Block UI 超级点SuperPoint
  • Linux——kafka常用命令
  • GLTF编辑器如何快速重置模型原点
  • 【STL】vector常见用法及模拟实现(附源码)
  • 深度学习保姆级教学
  • 计算机视觉的优势和挑战
  • 群晖管家+内网穿透实现公网远程访问本地黑群晖
  • Essential C++【读书笔记 思考总结】
  • 深度学习实战基础案例——卷积神经网络(CNN)基于Xception的猫狗识别|第2例
  • Linux Systemd 配置开机自启
  • 华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 fio 深度测评华为云云耀云服务器L实例的磁盘性能
  • 卸载Visual Studio 2010学习版 —— 卸载VCExpress
  • react的状态管理简单钩子方法
  • 【Git】轻松学会 Git:深入理解 Git 的基本操作
  • 什么是HTTP头部(HTTP headers)?