JFFS
![]() | Эта статья включает список литературы , связанную литературу или внешние ссылки , но ее источники остаются неясными, поскольку в ней отсутствуют встроенные цитаты . ( Август 2020 г. ) |
Разработчик(и) | Осевые коммуникации |
---|---|
Полное имя | Журналируемая файловая система Flash |
Другой | |
Поддерживается операционные системы | Линукс |
Журналируемая файловая система флэш-памяти (или JFFS ) — это файловая система с журнальной структурой для использования на устройствах флэш-памяти NOR в операционной системе Linux . Он был заменен JFFS2 .
Дизайн
[ редактировать ]Флэш-память (в частности, NOR flash ) должна быть стерта перед записью. Процесс стирания имеет несколько ограничений:
- Стирание происходит очень медленно (обычно 1–100 мс на блок стирания, что составляет 10 мс). 3 –10 5 раз медленнее, чем чтение данных из того же региона).
- Стереть флэш-память можно только большими сегментами (обычно 64 КиБ или более), тогда как ее можно читать или записывать более мелкими блоками (часто 512 байт).
- Флэш-память можно стирать только ограниченное количество раз (обычно 10 раз). 3 –10 6 ) до того, как он изнашивается.
Эти ограничения в совокупности создают глубокую асимметрию между моделями доступа к чтению и записи во флэш-память. Напротив, магнитные жесткие диски предлагают почти симметричный доступ к чтению и записи: скорость чтения и записи почти одинакова (поскольку обе ограничиваются скоростью вращения диска), можно как читать, так и записывать небольшие блоки или сектора. (обычно 512 или 4096 байт), и практического ограничения на количество раз, которое можно записывать и перезаписывать на магнитный носитель, не существует.
Традиционные файловые системы, такие как ext2 или FAT , которые были разработаны для использования на магнитных носителях, обычно обновляют свои структуры данных на месте, при этом структуры данных, такие как индексные дескрипторы и каталоги, обновляются на диске после каждого изменения. Такое концентрированное отсутствие выравнивания износа делает традиционные файловые системы непригодными для чтения и записи на флэш-устройствах.
JFFS обеспечивает выравнивание износа , рассматривая флэш-устройство как циклический журнал. Все изменения файлов и каталогов записываются в хвост журнала в узлах . В каждом узле сначала записывается заголовок, содержащий метаданные, а затем данные файла, если таковые имеются. Узлы связаны между собой указателями смещения в заголовке. Узлы изначально действительны , а затем устаревают , когда создается их новая версия.
Свободное пространство, остающееся в файловой системе, представляет собой промежуток между хвостом и головой журнала. Когда он заканчивается, сборщик мусора копирует действительные узлы из головы в хвост и пропускает устаревшие, освобождая таким образом место.
См. также
[ редактировать ]Ссылки
[ редактировать ]Источники
[ редактировать ]- Вудхаус, Дэвид (9 июля 2003 г.). «JFFS2: Файловая система Journalling Flash, версия 2» . SourceWare.org . Проверено 3 октября 2022 г.
Внешние ссылки
[ редактировать ]- Домашняя страница JFFS (больше не поддерживается). Архивировано 20 января 2017 г. на Wayback Machine.
- Список рассылки разработчиков JFFS. Архивировано 21 августа 2010 г. на Wayback Machine.