mmkv的 mmap 的理解

传统I/O 的示意图 个人理解

对于传统I/O 我们一般说的效率低 是指 修改数据都需要 把数据在用户缓存 内核缓存直接 拷贝来拷贝去。且每次都是全量拷贝。

mmap对应的示意图 个人理解。

对于mmap解决的就是去除了把数据在用户缓存 内核缓存直接 拷贝来拷贝去的步骤。改为操作由内核创建的一块物理内存。这个区域进程可以直接访问,内核也可以直接访问。大家说的内存映射就是这块共享内存跟磁盘内存的映射,app读写数据都是直接操作共享内存,app读取发现没有数据,内核负责区磁盘读取放到共享内存。app写数据,内核负责同步数据到磁盘。

相关推荐
Bigger3 小时前
Flutter 开发实战:解决华为 HarmonyOS 任务列表不显示 App 名称的终极指南
android·flutter·华为
利剑 -~6 小时前
mysql面试题整理
android·数据库·mysql
梁同学与Android8 小时前
Android ---【经验篇】ArrayList vs CopyOnWriteArrayList 核心区别,怎么选择?
android·java·开发语言
沐怡旸9 小时前
【翻译】adb screenrecord 帮助文档
android
lienyin10 小时前
Android 简单的SFTP服务端+客户端通信传文件
android
fatiaozhang952715 小时前
中兴B860AV5.2-U_原机安卓4.4.2系统专用_晶晨S905L3SB处理器_线刷固件包
android·电视盒子·刷机固件·机顶盒刷机·中兴b860av5.2-u
儿歌八万首15 小时前
Android 自定义 View 实战:打造一个跟随滑动的丝滑指示器
android·kotlin
我有与与症15 小时前
Kuikly 实战:手把手撸一个跨平台 AI 聊天助手 (ChatDemo)
android
恋猫de小郭15 小时前
Flutter UI 设计库解耦重构进度,官方解答未来如何适配
android·前端·flutter
apihz16 小时前
全球IP归属地查询免费API详细指南
android·服务器·网络·网络协议·tcp/ip