LittleFS
Подробнее
- Создатель
- Christopher Haster
- Владелец
- Arm (Mbed)
- Год
- 2017
- Лицензия
- BSD-3-Clause
- Исходный код
- github.com/littlefs-project
Крошечная файловая система для флеш-памяти микроконтроллеров, спроектированная в расчёте на то, что питание пропадёт посреди записи.
Написана в Arm в 2017 году для Mbed OS: FAT на «голой» флеш-памяти подходит плохо — прерванная запись может испортить таблицу размещения, а одни и те же сектора изнашиваются первыми. LittleFS хранит метаданные в парах блоков, которые пишутся поочерёдно, а данные — по схеме copy-on-write, поэтому старое состояние живо, пока новое не зафиксировано полностью. Brown-out посреди файла оставит вам старый файл, а не половину нового.
Расход ОЗУ ограничен и известен заранее, что важно, когда её всего 64 КБ. Динамическое выравнивание износа встроено. Её поддерживают Zephyr и ESP-IDF, а ядро Arduino для ESP8266 заменило ею SPIFFS.