Systém souborů Flash - Flash file system

Systém souborů flash je systém souborů určený k ukládání souborů na paměťová zařízení založená na paměti flash . I když souborové systémy flash úzce souvisí se souborovými systémy obecně, jsou optimalizovány pro povahu a vlastnosti paměti flash (například aby se zabránilo zesílení zápisu ) a pro použití v konkrétních operačních systémech .

Přehled

Zatímco vrstva blokového zařízení může emulovat diskovou jednotku, takže lze na úložném zařízení založeném na flash použít univerzální souborový systém, je to neoptimální z několika důvodů:

  • Mazání bloků: bloky flash paměti musí být před zápisem explicitně vymazány. Čas potřebný k vymazání bloků může být značný, proto je výhodné vymazat nepoužívané bloky, když je zařízení nečinné.
  • Náhodný přístup : univerzální souborové systémy jsou optimalizovány tak, aby se zabránilo vyhledávání disku, kdykoli je to možné, kvůli vysokým nákladům na vyhledávání. Paměťová zařízení Flash neukládají žádnou latenci hledání.
  • Vyrovnání opotřebení : zařízení flash paměti mají tendenci se opotřebovávat, když je jeden blok opakovaně přepsán; flash souborové systémy jsou navrženy tak, aby rovnoměrně rozložily zápisy.

Systémy souborů se strukturou protokolu mají všechny požadované vlastnosti pro systém souborů flash. Tyto souborové systémy patří JFFS2 a YAFFS .

Kvůli zvláštním charakteristikám flash paměti se nejlépe používá buď s řadičem k vyrovnání opotřebení a korekci chyb, nebo se speciálně navrženými systémy souborů flash , které šíří zápisy po médiích a řeší dlouhé doby mazání bloků NAND flash. Základní koncept za souborovými systémy flash je: když má být úložiště flash aktualizováno, systém souborů zapíše novou kopii změněných dat do nového bloku, přemapuje ukazatele souboru a poté starý blok později vymaže čas.

V praxi se systémy souborů flash používají pouze pro zařízení MTD ( Memory Technology Devices ), což jsou vložené paměti typu flash, které nemají řadič. Vyměnitelné paměťové karty flash a USB flash disky mají vestavěné ovladače pro správu MTD pomocí speciálních algoritmů, jako je vyrovnání opotřebení, zotavení špatného bloku, obnovení ztráty energie, sběr odpadků a oprava chyb , takže použití systému souborů flash má omezenou výhodu.

Paměťová zařízení na bázi Flash jsou stále častější, protože se zvyšuje počet mobilních zařízení, snižuje se cena za velikost paměti a zvyšuje se kapacita čipů flash.

Počátky

Nejstarší souborový systém flash, který spravoval řadu flash jako volně zapisovatelný disk, byl TrueFFS od společnosti M-Systems of Israel, představený jako softwarový produkt na PC-Card Expo v Santa Clara v Kalifornii v červenci 1992 a patentovaný v roce 1993.

Jedním z prvních souborových systémů Flash byl Microsoft FFS2 pro použití s MS-DOS , vydaný na podzim 1992. FFS2 předcházel dřívější produkt s názvem „FFS“, který však nedosahoval úrovně systému souborů Flash a spravoval flash pole jako zápis jednou přečte mnoho (WORM) prostoru, spíše než jako volně zapisovatelný disk.

Kolem roku 1994 schválila průmyslová skupina PCMCIA specifikaci FTL ( Flash Translation Layer ) založenou na návrhu TrueFFS společnosti M-Systems. Specifikace byla autorem a společně navržena společnostmi M-Systems a SCM Microsystems , které rovněž poskytly první funkční implementace FTL. FTL, podporovaný společností Intel, se stal populárním designem souborového systému Flash také v médiích jiných než PCMCIA.

Linux flash souborové systémy

JFFS, JFFS2 a YAFFS
JFFS byl první souborový systém specifický pro flash pro Linux , ale byl rychle nahrazen JFFS2 , původně vyvinutým pro NOR flash. Poté byl v roce 2002 vydán YAFFS , který se zabývá konkrétně NAND flash, a JFFS2 byl aktualizován, aby podporoval také NAND flash.
UBIFS
UBIFS byl sloučen od Linuxu 2.6.22 v roce 2008. UBIFS byl aktivně vyvíjen od počátečního sloučení. UBIFS má dokumentaci hostovanou na infradead.org spolu s ovladači JFFS2 a MTD. Některá počáteční srovnání ukazují UBIFS s kompresí rychlejší než F2FS.
LogFS
LogFS , další souborový systém specifický pro Linux, je v současné době vyvíjen, aby řešil problémy se škálovatelností JFFS2.
F2FS
F2FS (Flash-Friendly File System) byl přidán do linuxového jádra 3.8. Místo toho, aby byl F2FS zaměřen na přímý rozhovor se surovými flash zařízeními, je navržen pro použití na paměťových zařízeních založených na flash zařízeních, která již obsahují vrstvu překladu flash, jako jsou SD karty .

Souborové systémy Unie

Overlayfs, Unionfs a aufs jsou sjednocené souborové systémy, které umožňují kombinovat více souborových systémů a prezentovat je uživateli jako jeden strom. To umožňuje návrháři systému umístit části operačního systému, které jsou nominálně jen pro čtení na různých médiích, do normálních oblastí pro čtení a zápis. OpenWrt se obvykle instaluje na surové flash čipy bez FTL. Využívá overlayfs kombinovat komprimované pouze pro čtení squashfs s JFFS2 .

Překladové vrstvy

Viz také

Reference

externí odkazy