日志持久化与 barrier

本文对应 成长路径 中优先级:在 eMMC/UBIFS 上配置 日志 与理解 刷盘 对寿命和性能的影响。


应用日志

方式特点
syslog / journald结构化、轮转
写文件简单,需控制大小
tmpfs掉电丢失,减 flash 磨损

嵌入式常:/var/log可写分区tmpfs + 远程上报


ext4 journal

  • data=ordered(默认):元数据 journal,数据先写再提交元数据。
  • barrier:保证写入顺序,掉电一致性 更好,可能 增延迟

挂载选项:

noatime,nodiratime,barrier=1

只读根可避免 journal 磨损,见 eMMC 与 ext4 根文件系统


sync / fsync

fsync(fd);   /* 该文件 */
sync();      /* 全局,重 */

高频 fsync 在 eMMC 上 放大写放大;批量提交或 环形缓冲 更合适。


UBIFS

日志在 UBI 卷 内;注意 sync 触发 垃圾回收 峰值延迟。


延伸阅读