What is a good filesystem for embedded NAND drives?
Asked Answered
A

3

12

I am working on an embedded application that uses NAND flash for storage. As it looks now, we won't use Linux or any other RTOS. The application must handle unexpected power downs.

We have been looking on different file system solutions, including YAFFS2, JFFS2, FAT+FTL as well as solutions from HCC Embedded.

I have heard FAT+FTL is a normal choice, but I am worried about data loss in case of unexpected power downs as well as performance. Would be grateful if anyone could share insights and experience about this

Amblyoscope answered 18/3, 2009 at 9:48 Comment(1)
Update: We went with YAFFS2, it works well for us. Documentation is non-existent, but not a big problem - the code is pretty clear to read. Also there is good support from Charles Manning.Amblyoscope
M
9

FAT-FTL is a "normal choice", but not necessarily a good choice. YAFFS2 is newer than JFFS2 and seems to be faster and more scalable for large NANDs. This presentation of the "Embedded Linux Conference Europe" compares these two and other flash file systems.

Another solution is LogFS (note: log stands here for logorithmic, not for log-structured). It should also be more scalable, but I have no idea how muture it is.

Mudslinging answered 18/3, 2009 at 10:7 Comment(1)
Thanks, that's an interesting presentation. From what I've read LogFS does not seem ready for production.Amblyoscope
M
7

There's UBIFS. The only implementation I know of is in the Linux kernel, and it depends on the Linux kernel's UBI interface. However, the fundamental algorithms should be implementable without too much trouble in whatever environment you are using. As for production-readiness, Nokia uses UBIFS in their N900 smartphone, and plug computers based on the SheevaPlug have support for it, too. I have found the Linux implementation to be reliable, even on flaky hardware that likes to reset itself at random. Unlike JFFS2, UBIFS does not need to read the entire filesystem at startup.

You may want to reconsider your "no Linux" decision, since using Linux would make it a lot easier to use UBIFS.

Miriam answered 30/3, 2010 at 20:42 Comment(0)
G
2

There is a commercial vendor called DataLight which offers a robust flash file system, but of course it's not free.

They have an interesting white paper (PDF) (take with a grain of salt) on performances.

Goosy answered 18/3, 2009 at 20:25 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.