Je travaille actuellement sur un projet qui implique la journalisation rapide et continue d'une métrique plutôt spécifique à l'application sur une longue durée de vie. Pour ce faire, j'ai fini par utiliser un NXP M0 et une puce flash 32 Mo SPI. L'enregistrement est continu et doit durer de nombreuses années sur le terrain (10+), et est périodiquement vérifié par un humain pour repérer les tendances. Finalement, le tampon se remplit et commence à remplacer les anciennes données, ce qui est parfaitement correct. J'ai trouvé un algorithme simple pour parcourir tout le périphérique flash pour trouver la tête actuelle après une mise sous tension (le périphérique est mis hors tension assez fréquemment hors de mon contrôle) afin que la journalisation puisse simplement continuer là où elle s'était arrêtée. Je peux simplement utiliser la force brute à travers cette promenade et le faire avec ~ 4s comme pire scénario.
Cela m'a fait penser, y a-t-il des systèmes de fichiers structurés en journaux qui sont adaptés aux périphériques flash et aux microcontrôleurs? JFFS et tous les autres FS Log Structured FS bien connus que j'imagine seraient un peu lourds pour un simple microcontrôleur (cela dépend bien sûr de l'application). Pour être plus précis, j'aimerais connaître tous les algorithmes conçus spécifiquement pour être un journal circulaire avec un temps de recherche de tête rapide et / ou tous ceux conçus pour un système de fichiers "traditionnel" sur un périphérique flash pouvant être exécuté sur un microcontrôleur. Traditionnel dans ce sens étant comparable à quelque chose comme JFFS où il existe une structure de données qui représente une collection de fichiers à accès aléatoire mutables dans un espace de noms hiérarchique.