Хорошей отправной точкой является получение исходных кодов ядра, make menuconfig
и вход в меню Файловых систем. Есть несколько очень хороших файловых систем для микроконтроллеров - CROMFS и CRAMFS - очень маленькие сжатые файловые системы только для чтения (CROM) или непостоянного чтения-записи (CRAM), для создания которых требуются специальные инструменты, но которые обеспечивают очень малую площадь памяти и места на диске, Fossil обеспечивает RW, но не иерархию каталогов (идеально подходит для хранения данных в сочетании с CROMFS), несколько более продвинутых файловых систем, предназначенных специально для флэш-носителей, таких как JFFS или YAFFS. Вы также можете взглянуть на UnionFS, которая позволяет накладывать две файловые системы, например, ОС на основе ПЗУ с перезаписанными частями на основе Flash и временные версии на основе ОЗУ.
Есть куча других файловых систем. Если что-то вас заинтересует, в документации / файловых системах вы найдете больше информации, а затем, если вы хотите узнать больше, прочитайте источники.
FAT является убийцей для флэш-устройств, не защищенных от износа, поскольку таблица размещения файлов записывается в одно и то же место снова и снова. EXT3 тоже не очень хорош для вспышки.