【问题标题】:SQLite3 in Embedded Linux NOR MTD Flash嵌入式 Linux NOR MTD 闪存中的 SQLite3
【发布时间】:2013-09-12 12:37:10
【问题描述】:

嵌入式系统具有 M68K 架构(基于 MCF547x),带有 colilo 和 linux 内核 2.6.10 它使用 MTD(内存类型设备)NOR Flash(Spansion 制造)。 大约有 32 MB 的数据需要管理(全部以记录的形式),可用内存为 40 MB 作为 MTD 分区(JFFS2 文件系统)。 我想了解在使用 SQlite3(合并版)进行此练习时可能遇到的性能相关问题或任何其他与内存相关的问题。

内存相关问题是指内存分区的频繁碎片整理操作(因为几乎每秒都会修改 32 MB 的数据库)。

有关此要求的任何经验/见解都会非常有帮助。请分享您对必须注意的事项的经验。

【问题讨论】:

    标签: linux sqlite embedded-linux


    【解决方案1】:

    每秒写入 MTD 根本不是一个好主意。你很快就会得到坏扇区。尝试将您的 sqlite 文件保存在 /tmp 中。这将大大提高读/写操作的速度并延长 MTD 寿命。

    【讨论】:

    • NOR 闪存中的坏扇区不太可能发生。您的意思是 /tmp 是 RAMFS 还是 JFFS2?我们需要持久的数据存储。
    【解决方案2】:

    SPANSION NOR 存储器每个擦除扇区有 100k 擦除周期(通常为 128kB),因此如果您的应用程序每秒写入一次,您的 NOR 寿命将大大缩短。 UBIFS/YAFS/JFFS2 可以提供帮助,但不能避免。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-21
      • 1970-01-01
      • 1970-01-01
      • 2011-06-10
      • 2015-06-16
      • 1970-01-01
      相关资源
      最近更新 更多