在 Android 14 时代系统不再使用单一的文件系统而是采用了“多文件系统混合”的架构。针对不同的分区特性只读 vs. 读写、系统 vs. 用户数据Android 会选择最适合该场景的文件系统。作为 Android 系统开发者可能已经注意到 Android 14 进一步深化了EROFS和F2FS的统治地位。以下是当前的布局详述1. 核心分区布局表分区类型挂载点推荐/主流文件系统核心特点系统只读分区/system,/vendor,/productEROFS(主流) / ext4高压缩率、极高性能的随机读取、节省内存。用户数据分区/data(userdata)F2FS(主流) / ext4针对 NAND Flash 优化、低写放大、高性能 SQLite。元数据分区/metadataext4用于存储加密密钥等关键元数据稳定性第一。持久化分区/persistext4存储出厂标定、MAC 地址等。2. EROFS现代 Android 的“只读标配”从 Android 13 开始Google 强制要求新上市的 GMS 设备在只读分区使用EROFS (Enhanced Read-Only File System)。为什么取代 ext4传统的只读 ext4 并不支持透明压缩。EROFS 是华为开发并贡献给 Linux 内核的它支持Fixed-output 压缩算法。性能优势它解决了“解压导致的读放大”问题。在随机读场景下EROFS 的表现远超 ext4 或 SquashFS。对于 Android 启动速度和应用加载速度有显著提升。内存节省支持In-place Decompression (就地解压)解压过程不需要额外的缓冲区极大地节省了低内存设备如 MTK 某些入门级芯片的运行时开销。3. F2FS闪存的最佳拍档对于需要频繁读写的/data分区F2FS (Flash-Friendly File System)是目前 Android 设备尤其是使用 UFS 或高速 eMMC 的设备的首选。LFS 架构采用日志结构文件系统将随机写转化为顺序写极大延长了闪存寿命并提升了写入速度。Android 14 优化在 Android 14 中F2FS 的碎片化处理和Checkpointing机制得到了进一步优化以减少“手机用久了就卡”的情况。功能支持深度集成fscrypt文件级加密和fsverity确保用户数据安全。4. 逻辑层动态分区 (Dynamic Partitions)在物理层和文件系统层之间Android 还引入了Super 镜像LVM 逻辑卷管理。你平时处理的system.img、vendor.img实际上往往是 Super 分区中的逻辑卷Logical Partitions。实现方式通过内核的dm-linear映射。灵活性允许在 OTA 更新时动态调整各分区大小而不必在物理分区表GPT中固定死。MediaTek (MTK) 平台的开发细节Android 14 的 MTK 平台优化Split Build:在 Android 14 的 Split Build 架构下你会发现不同的逻辑分区如system_dlkm或vendor_dlkm也开始全面转向EROFS这有利于进一步减小出厂镜像包的大小。性能分析如果发现 Android 14 的性能指标不如 Android 13建议检查BoardConfig.mk中 EROFS 的压缩配置如BOARD_EROFS_COMPRESS_HINTS。有时为了追求极致随机读性能可以选择关闭部分敏感镜像的压缩。
Android14文件系统:EROFS与F2FS深度解析
发布时间:2026/6/9 12:55:00
在 Android 14 时代系统不再使用单一的文件系统而是采用了“多文件系统混合”的架构。针对不同的分区特性只读 vs. 读写、系统 vs. 用户数据Android 会选择最适合该场景的文件系统。作为 Android 系统开发者可能已经注意到 Android 14 进一步深化了EROFS和F2FS的统治地位。以下是当前的布局详述1. 核心分区布局表分区类型挂载点推荐/主流文件系统核心特点系统只读分区/system,/vendor,/productEROFS(主流) / ext4高压缩率、极高性能的随机读取、节省内存。用户数据分区/data(userdata)F2FS(主流) / ext4针对 NAND Flash 优化、低写放大、高性能 SQLite。元数据分区/metadataext4用于存储加密密钥等关键元数据稳定性第一。持久化分区/persistext4存储出厂标定、MAC 地址等。2. EROFS现代 Android 的“只读标配”从 Android 13 开始Google 强制要求新上市的 GMS 设备在只读分区使用EROFS (Enhanced Read-Only File System)。为什么取代 ext4传统的只读 ext4 并不支持透明压缩。EROFS 是华为开发并贡献给 Linux 内核的它支持Fixed-output 压缩算法。性能优势它解决了“解压导致的读放大”问题。在随机读场景下EROFS 的表现远超 ext4 或 SquashFS。对于 Android 启动速度和应用加载速度有显著提升。内存节省支持In-place Decompression (就地解压)解压过程不需要额外的缓冲区极大地节省了低内存设备如 MTK 某些入门级芯片的运行时开销。3. F2FS闪存的最佳拍档对于需要频繁读写的/data分区F2FS (Flash-Friendly File System)是目前 Android 设备尤其是使用 UFS 或高速 eMMC 的设备的首选。LFS 架构采用日志结构文件系统将随机写转化为顺序写极大延长了闪存寿命并提升了写入速度。Android 14 优化在 Android 14 中F2FS 的碎片化处理和Checkpointing机制得到了进一步优化以减少“手机用久了就卡”的情况。功能支持深度集成fscrypt文件级加密和fsverity确保用户数据安全。4. 逻辑层动态分区 (Dynamic Partitions)在物理层和文件系统层之间Android 还引入了Super 镜像LVM 逻辑卷管理。你平时处理的system.img、vendor.img实际上往往是 Super 分区中的逻辑卷Logical Partitions。实现方式通过内核的dm-linear映射。灵活性允许在 OTA 更新时动态调整各分区大小而不必在物理分区表GPT中固定死。MediaTek (MTK) 平台的开发细节Android 14 的 MTK 平台优化Split Build:在 Android 14 的 Split Build 架构下你会发现不同的逻辑分区如system_dlkm或vendor_dlkm也开始全面转向EROFS这有利于进一步减小出厂镜像包的大小。性能分析如果发现 Android 14 的性能指标不如 Android 13建议检查BoardConfig.mk中 EROFS 的压缩配置如BOARD_EROFS_COMPRESS_HINTS。有时为了追求极致随机读性能可以选择关闭部分敏感镜像的压缩。