Jump to content

Флэш-файловая система

Флэш -файловая система — это файловая система, предназначенная для хранения файлов на устройствах хранения данных с флэш-памятью . Хотя флэш-файловые системы тесно связаны с файловыми системами в целом, они оптимизированы с учетом характера и характеристик флэш-памяти (например, чтобы избежать усиления записи ), а также для использования в определенных операционных системах .

Хотя уровень блочного устройства может эмулировать диск, чтобы можно было использовать файловую систему общего назначения на флэш-устройстве хранения данных, это неоптимально по нескольким причинам:

  • Стирание блоков: блоки флэш-памяти должны быть явно стерты, прежде чем в них можно будет записать. Время, затрачиваемое на стирание блоков, может быть значительным, поэтому полезно стирать неиспользуемые блоки, пока устройство находится в режиме ожидания.
  • Произвольный доступ : файловые системы общего назначения оптимизированы таким образом, чтобы по возможности избегать поиска на диске из-за высокой стоимости поиска. Устройства флэш-памяти не имеют задержки поиска.
  • Выравнивание износа : устройства флэш-памяти имеют тенденцию изнашиваться при многократной перезаписи одного блока; Файловые системы флэш-памяти предназначены для равномерного распределения записи.

Файловые системы с журнальной структурой обладают всеми желаемыми свойствами флэш-файловой системы. [1] К таким файловым системам относятся JFFS2 и YAFFS .

Из-за особых характеристик флэш-памяти ее лучше всего использовать либо с контроллером для выравнивания износа и исправления ошибок , либо со специально разработанными флэш- файловыми системами , которые распределяют записи по носителю и справляются с длительным временем стирания флэш-блоков NAND. Основная концепция флэш-файловых систем такова: когда флэш-память должна быть обновлена, файловая система записывает новую копию измененных данных в новый блок, переназначает указатели файлов, а затем стирает старый блок позже, когда он будет время.

На практике флэш-файловые системы используются только для устройств памяти (MTD), которые представляют собой встроенную флэш-память, не имеющую контроллера. Съемные карты флэш-памяти и USB-накопители имеют встроенные контроллеры для управления MTD с помощью специальных алгоритмов. [2] [3] такие как выравнивание износа, восстановление поврежденных блоков, восстановление при потере питания, сбор мусора и исправление ошибок , поэтому использование флэш-файловой системы имеет ограниченную пользу.

Устройства флэш-памяти становятся все более распространенными по мере увеличения количества мобильных устройств, снижения стоимости объема памяти и увеличения емкости микросхем флэш-памяти.

Происхождение

[ редактировать ]

Самой ранней файловой системой флэш-памяти, управляющей массивом флэш-памяти как свободно записываемым диском, была TrueFFS израильской компании M-Systems , представленная как программный продукт на выставке PC-Card Expo в Санта-Кларе, Калифорния , в июле 1992 года и запатентованная в 1993 году. [4]

Одной из первых флэш-файловых систем была Microsoft FFS2 для использования с MS-DOS , выпущенная осенью 1992 года. [5] FFS2 предшествовал более ранний продукт под названием «FFS», который, однако, не дотягивал до уровня флэш-файловой системы, управляя флэш-массивом как пространством для записи после чтения (WORM), а не как свободно записываемым диском.

Примерно в 1994 году PCMCIA промышленная группа утвердила спецификацию Flash Translation Layer (FTL), основанную на конструкции TrueFFS компании M-Systems. Спецификация была написана и совместно предложена компаниями M-Systems и SCM Microsystems , которые также предоставили первые рабочие реализации FTL. Одобрено Intel, [6] FTL стал популярным дизайном флэш-файловой системы и на носителях, отличных от PCMCIA.

Флэш-файловые системы Linux

[ редактировать ]
JFFS, JFFS2 и YAFFS
JFFS была первой файловой системой для Linux , предназначенной для флэш-памяти , но ее быстро заменила JFFS2 , первоначально разработанная для флэш-памяти NOR. Затем в 2002 году был выпущен YAFFS , посвященный специально флэш-памяти NAND, а JFFS2 был обновлен для поддержки флэш-памяти NAND.
БИФС
UBIFS объединен с Linux 2.6.22. [7] в 2008 году. UBIFS активно развивался с момента его первоначального слияния. [8] UBIFS Документация размещена на сайте infradead.org вместе с драйверами JFFS2 и MTD. Некоторые первоначальные сравнения показывают, что UBIFS обеспечивает более быстрое сжатие, чем F2FS. [9]
ЛогФС
LogFS , еще одна файловая система, предназначенная для флэш-памяти Linux, в настоящее время разрабатывается для решения проблем масштабируемости JFFS2.
Ф2ФС
F2FS (файловая система, дружественная к Flash) была добавлена ​​в ядро ​​Linux 3.8. [10] Вместо того, чтобы напрямую обращаться к устройствам с необработанной флэш-памятью, F2FS предназначен для использования на устройствах хранения на основе флэш-памяти, которые уже включают уровень трансляции флэш-памяти, таких как SD-карты . [11]

Объединение файловых систем

[ редактировать ]

Overlayfs, Unionfs и aufs — это объединенные файловые системы, которые позволяют объединять несколько файловых систем и представлять их пользователю как одно дерево. Это позволяет разработчику системы размещать части операционной системы, которые номинально доступны только для чтения, на разных носителях в обычных областях чтения и записи. OpenWrt обычно устанавливается на сырые флэш-чипы без FTL. Он использует overlayfs для объединения сжатой SquashFS, доступной только для чтения, с JFFS2 .

Слои перевода

[ редактировать ]

См. также

[ редактировать ]
  1. ^ Арнд Бергманн (18 февраля 2011 г.). «Оптимизация Linux с помощью дешевых флешек» . LWN.net . Проверено 26 января 2013 г.
  2. ^ «Контроллер USBkey от Phison PS2251-63» . Архивировано из оригинала 28 июля 2011 г. Проверено 26 мая 2011 г.
  3. ^ OpenNFM: NAND FTL с открытым исходным кодом для SSD и встроенного модуля хранения.
  4. ^ Патент США 5404485 , «Файловая система Flash, Амир Бан».  
  5. ^ «Патент Microsoft FFS2» . Архивировано из оригинала 19 декабря 2016 г. Проверено 9 января 2009 г.
  6. ^ «Понимание спецификации уровня трансляции Flash (FTL)» (PDF) . Интел . Декабрь 1998 г. Архивировано из оригинала (PDF) 19 июля 2014 г. Проверено 27 июля 2015 г.
  7. ^ Джонатан Корбет (2 апреля 2008 г.). «ЮБИФС» . ЛВН.
  8. ^ Ричард Вайнбергер (24 сентября 2012 г.). «UBI: запрос Fastmap на включение» . ЛКМЛ.
  9. ^ Нил Браун (11 декабря 2012 г.). «JFFS2, UBIFS и рост флэш-памяти» . ЛВН.
  10. ^ «Файловые системы и хранилища» . Журнал ядра — появится в версии 3.8 . Х. ​21 января 2013 г. Проверено 23 января 2013 г.
  11. ^ Нил Браун (10 октября 2012 г.). «Разборка f2fs» . LWN.net . Проверено 9 апреля 2014 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c14bddf408207a0e790169092cd67587__1713162420
URL1:https://arc.ask3.ru/arc/aa/c1/87/c14bddf408207a0e790169092cd67587.html
Заголовок, (Title) документа по адресу, URL1:
Flash file system - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)