Ext2

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 11. ledna 2018; kontroly vyžadují 12 úprav .

ext2
Vývojář Remy Card
Souborový systém Druhý rozšířený souborový systém
Datum podání leden 1993 ( Linux )
štítek svazku Apple_UNIX_SVR2 ( Apple Partition Map )
0x83 ( Master Boot Record )
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 ( GPT )
Struktura
Obsah složky Stůl
Umístění souboru Bitmapa (volné místo), tabulka ( metadata )
Špatné sektory Tabulka (používá stejnou tabulku jako pro soubory)
Omezení
Maximální velikost souboru 16 GB – 2 TB
Maximální počet souborů 10 18
Maximální délka souboru 255 bajtů
Maximální velikost svazku 2-32 TB
Platné znaky v názvech Libovolný bajt kromě NULL a '/'
Schopnosti
Vlastnosti Čas úpravy (mtime), čas úpravy metadat (ctime), čas posledního přístupu (atime)
Časové období 14. prosince 1901 – 18. ledna 2038
Přesnost ukládání data 1 sekunda
Přístupová práva POSIX
Komprese pozadí ne (dostupné prostřednictvím záplat)
Šifrování na pozadí Ne
OS podporován Linux , BSD , Mac OS X (přes IFS )

Second Extended File System (doslova: „druhý rozšířený souborový systém“ ), zkráceně ext2 (někdy ext2fs ) je souborový systém linuxového jádra . Byl vyvinut společností Remy Card jako náhrada tehdy existujícího ext . Pokud jde o rychlost a výkon, může sloužit jako měřítko v testech výkonu souborového systému . V testech rychlosti sekvenčního čtení a zápisu provedených The Dell TechCenter tedy souborový systém ext2 předbíhá ext3 a v testu čtení je pouze horší než modernější ext4 [1] .

Hlavní nevýhodou ext2 (a jedním z důvodů, proč funguje tak dobře) je, že nejde o žurnálovací souborový systém . Byl odstraněn v souborovém systému ext3 ,  další verzi Extended File System , který je plně kompatibilní s ext2. Ale pro ssd je to spíše plus, protože to prodlužuje životnost disku. To je hlavní důvod, proč EXT2 stále podporuje Anaconda a Ubiquity.

Souborový systém ext2 se stále používá na flash kartách a jednotkách SSD (Solid State Drive), protože absence žurnálování je výhodou při práci s disky, které mají omezený počet cyklů zápisu.

Historie

Ve svých počátcích Linux používal souborový systém Minix OS . Byl poměrně stabilní, ale zůstal 16bitový a v důsledku toho měl pevný limit 64 MB na oddíl. Bylo také omezeno na maximální délku názvu souboru: byla 14 znaků. Tato a další omezení byla impulsem pro vývoj „ Extended File System “ ( anglicky  Extended File System ), řešící dva z hlavních problémů Minixu. Nový souborový systém byl představen v dubnu 1992 . Ext rozšířil limity velikosti souboru na 2 gigabajty [2] a nastavil limit názvu souboru na 255 bajtů.

Přesto zůstalo mnoho nevyřešených problémů: chyběla podpora odděleného přístupu, časová razítka pro úpravu dat. Právě tyto problémy inspirovaly vytvoření další verze rozšířeného souborového systému ext2 ( anglicky  Second Extended File System ), vyvinutého v lednu 1993 . ext2 také implementoval ACL kompatibilní s POSIX a rozšířené atributy souborů .

Logická organizace souborového systému ext2

Graf popisující hierarchii adresářů souborového systému ext2 je síť. Důvodem této organizace je, že jeden soubor může být zahrnut do několika adresářů najednou.

Všechny typy souborů mají symbolické názvy. V hierarchicky organizovaných souborových systémech se běžně používají tři typy jmen : jednoduché, složené a relativní. ext2 není výjimkou. Omezení pro jednoduchý název je, že jeho délka nesmí přesáhnout 255 bajtů a název nesmí obsahovat znak NUL a lomítko . Omezení pro znak NUL souvisí s reprezentací řetězců v jazyce C a se znakem lomítka, protože se používá jako oddělovací znak mezi adresáři.

Plně kvalifikovaný název je řetězec jednoduchých symbolických názvů všech adresářů , kterými prochází cesta od kořene k danému souboru . Na souborovém systému ext2 může být soubor ve více adresářích, a proto může mít více plně kvalifikovaných jmen; zde platí korespondence "jeden soubor - mnoho celých jmen". V obou případech plně kvalifikovaný název jednoznačně identifikuje soubor.

Atributy souborového systému ext2 jsou:

Atributy souborů nejsou uloženy v adresářích, jak je tomu u řady jednoduchých souborových systémů , ale ve speciálních tabulkách . V důsledku toho má adresář velmi jednoduchou strukturu, která se skládá pouze ze dvou částí: čísla inodu a názvu souboru.

Vnitřní organizace souborového systému ext2

Struktura diskových oddílů

Jako u každého souborového systému UNIX lze v ext2 rozlišit následující komponenty:

Celý prostor diskového oddílu je rozdělen do bloků pevné velikosti, které jsou násobky velikosti sektoru : 1024, 2048, 4096 nebo 8192 bajtů. Velikost bloku se zadává při vytváření systému souborů na diskovém oddílu. Menší velikost bloku šetří místo na pevném disku, ale také omezuje maximální velikost souborového systému. Všechny bloky mají sériová čísla. Aby se snížila fragmentace a počet pohybů hlavy pevného disku při čtení velkých datových polí, jsou bloky kombinovány do skupin bloků.

Základním konceptem souborového systému je inode, neboli inode ( informační uzel ) .  Jedná se o speciální strukturu, která obsahuje informace o atributech a fyzickém umístění souboru. Inody jsou uspořádány do tabulky, která je obsažena na začátku každé skupiny bloků.

Superblock

Superblok je hlavním prvkem souborového systému ext2 . Obsahuje obecné informace o systému souborů:

Superblok je 1024 bajtů od začátku sekce. Další blok za superblokem obsahuje globální deskriptorovou tabulku - popis skupin bloků, což je pole obsahující obecné informace o všech skupinách bloků v sekci.

Stav systému souborů přímo závisí na integritě superbloku. Operační systém vytvoří několik záložních kopií superbloku pro případ poškození oddílu . Příznak stavu používá operační systém k určení aktuálního stavu systému souborů. Pokud je souborový systém připojen ke čtení, pak příznak stavu bude indikovat, že souborový systém je čistý ("čistý" stav). Pokud je souborový systém připojen pro čtení a zápis, pak se stavový příznak vyplní informací, že se souborový systém používá (stav „nečistý“), a po odpojení systému souborů by měl stavový příznak opět indikovat integritu souborový systém [3] . Stavový příznak pomáhá identifikovat možné poškození systému souborů. Pokud by se například neočekávaně vypnulo napájení počítače, pak by příznak stavu indikoval nesprávné vypnutí systému souborů. Při příštím spuštění počítače bude muset operační systém zkontrolovat systém souborů na chyby, pokud příznak stavu neindikuje integritu systému souborů.

Blokové skupiny

Všechny bloky na oddílu ext2 jsou sloučeny do skupin bloků. Pro každou skupinu je v globální tabulce deskriptorů vytvořen samostatný záznam, ve kterém jsou uloženy hlavní parametry:

Bitmapa bloku je struktura, jejíž každý bit udává, zda je blok, který jí odpovídá, přiřazen k nějakému souboru. Pokud je bit 1, pak je blok zaneprázdněn. Podobnou funkci plní bitmapa inodů, která ukazuje, které inody jsou obsazené a které ne. Linuxové jádro se pomocí počtu inodů obsahujících adresáře snaží rovnoměrně rozdělit inody adresáře do skupin a pokud je to možné, pokouší se přesunout inody souborů do skupiny s nadřazeným adresářem. Veškerý zbývající prostor, označený v tabulce jako data , je vyhrazen pro ukládání souborů.

Katalogy

Adresáře mohou obsahovat další adresáře nebo soubory v nich. Fyzicky je adresář speciální soubor obsahující položky libovolné délky. Každá položka ukládá následující údaje [3] :

Tato organizace adresáře vám umožňuje ukládat do něj dlouhé názvy souborů bez plýtvání místem na disku.

Když se operační systém pokusí najít umístění souboru (nebo adresáře) na disku, načte obsah každého adresáře uvedeného v cestě k souboru (nebo adresáři) do paměti, aby našel inode dalšího adresáře uvedeného v cesta [3] podle jména . Procházení adresáře pokračuje, dokud není nalezen požadovaný soubor nebo adresář.

Systém adresování dat

Systém adresování dat je jednou z nejdůležitějších součástí souborového systému. Je to ona, kdo vám umožní najít požadovaný soubor mezi mnoha prázdnými a zaneprázdněnými bloky na disku .

Souborový systém ext2 používá následující schéma adresování bloků souborů. Pro uložení adresy souboru je přiděleno 15 polí, z nichž každé se skládá ze 4 bajtů . Pokud se soubor vejde do 12 bloků, pak jsou čísla odpovídajících shluků uvedena přímo v prvních dvanácti polích adresy. Pokud velikost souboru přesáhne 12 bloků, pak další pole obsahuje adresu clusteru, ve kterém lze najít čísla dalších bloků souboru. 13. pole se tedy používá pro nepřímé adresování.

Při maximální velikosti bloku 4096 bajtů může cluster odpovídající 13. poli obsahovat až 1024 čísel dalších bloků v souboru. Pokud velikost souboru přesáhne 12+1024 bloků, použije se 14. pole, které obsahuje adresu clusteru obsahujícího 1024 čísel clusteru, z nichž každé odkazuje na 1024 bloků souboru. Zde se používá dvojité nepřímé adresování. Konečně, pokud soubor obsahuje více než 12+1024+1048576 bloků, pak se poslední 15. pole použije pro trojité směrování.

Tento adresní systém umožňuje, s maximální velikostí bloku 4096 bajtů, mít soubory větší než 2 TB .

Viz také

Poznámky

  1. Srovnání výkonu Ext2, Ext3 a Ext4  (anglicky)  (odkaz není k dispozici) . Dell TechCenter (29. března 2010). Získáno 7. listopadu 2010. Archivováno z originálu dne 25. srpna 2011.
  2. M. Tim Jones. Anatomie ext4. Seznamte se se čtvrtým rozšířeným souborovým systémem (nepřístupný odkaz) . IBM developerWorks (30. června 2009). Získáno 6. července 2010. Archivováno z originálu dne 25. srpna 2011. 
  3. ↑ 1 2 3 4 Remy Card, Theodore Ts'o, Stephen Tweedie. Návrh a implementace druhého rozšířeného souborového systému  (anglicky)  (odkaz není dostupný) . e2fsprogs.sourceforge.net. Získáno 8. října 2016. Archivováno z originálu 4. února 2012.

Literatura

Odkazy