Domanda

Sto lavorando su un'applicazione integrata che utilizza NAND Flash per l'archiviazione. Come sembra ora, non useremo Linux o nessun altro RTOS. L'applicazione deve gestire interruzioni improvvise dell'alimentazione.

Abbiamo cercato diverse soluzioni di file system, tra cui YAFFS2, JFFS2, FAT + FTL, nonché soluzioni da HCC Embedded .

Ho sentito che FAT + FTL è una scelta normale, ma sono preoccupato per la perdita di dati in caso di interruzioni improvvise dell'alimentazione e delle prestazioni. Le sarei grato se qualcuno potesse condividere idee ed esperienze su questo

È stato utile?

Soluzione

FAT-FTL è una "scelta normale", ma non necessariamente una buona scelta. YAFFS2 è più recente di JFFS2 e sembra essere più veloce e più scalabile per le grandi NAND. Questa presentazione di " Embedded Linux Conference Europe " confronta questi due e altri file system flash.

Un'altra soluzione è LogFS (nota: il log sta qui per logoritmico, non per log strutturato). Dovrebbe anche essere più scalabile, ma non ho idea di quanto sia mutevole.

Altri suggerimenti

C'è UBIFS. L'unica implementazione che conosco è nel kernel Linux e dipende dall'interfaccia UBI del kernel Linux. Tuttavia, gli algoritmi fondamentali dovrebbero essere implementabili senza troppi problemi in qualsiasi ambiente in uso. Per quanto riguarda la prontezza alla produzione, Nokia utilizza UBIFS nel proprio smartphone N900 e anche i computer plug basati su SheevaPlug ne hanno il supporto. Ho trovato l'implementazione di Linux affidabile, anche su hardware instabile a cui piace ripristinarsi a caso. A differenza di JFFS2, UBIFS non deve leggere l'intero file system all'avvio.

Potresti voler riconsiderare il tuo " no Linux " decisione, poiché l'utilizzo di Linux renderebbe molto più semplice l'uso di UBIFS.

Esiste un fornitore commerciale chiamato DataLight che offre un robusto file system flash, ma ovviamente non è gratuito.

Hanno un interessante white paper (PDF) (prendi con un pizzico di sale) le performance.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top