Typy súborových systémov a ich charakteristiky. Flash pamäť ako motor pokroku. Typy názvov súborov

  • 22.06.2019

Dobrý deň, milý používateľ, v tomto článku budeme hovoriť o takej téme, ako sú súbory. Konkrétne zvážime: Správa súborov, typy súborov, štruktúra súboru, atribúty súboru.

Systém súborov

Jednou z hlavných úloh OS je poskytnúť používateľovi pohodlie pri práci s údajmi uloženými na diskoch. Na tento účel OS nahrádza fyzickú štruktúru uložených údajov nejakým užívateľsky prívetivým logickým modelom, ktorý je implementovaný ako adresárový strom zobrazený nástrojmi ako Norton Commander, Far Manager alebo Windows Explorer. Základným prvkom tohto modelu je súbor, ktorý je rovnaký ako systém súborov vo všeobecnosti môže byť charakterizovaná logickou aj fyzickou štruktúrou.

Správa súborov

Súbor– pomenovaná oblasť externej pamäte určená na čítanie a zápis údajov.

Súbory sú uložené v pamäti nezávisle od napájania. Výnimkou je ramdisk, kedy je v RAM vytvorená štruktúra napodobňujúca súborový systém.

Systém súborov(FS) je komponent OS, ktorý zabezpečuje organizáciu vytvárania, ukladania a prístupu k pomenovaným množinám údajov – súborom.

Súborový systém zahŕňa: Súborový systém zahŕňa:

  • Zbierka všetkých súborov na disku.
  • Množiny dátových štruktúr používaných na správu súborov (adresáre súborov, deskriptory súborov, tabuľky prideľovania voľného a použitého miesta na disku).
  • Sada systémových softvérových nástrojov, ktoré implementujú rôzne operácie so súbormi: vytváranie, ničenie, čítanie, zápis, pomenovanie, vyhľadávanie.

Úlohy riešené FS závisia od spôsobu organizácie výpočtového procesu ako celku. Najjednoduchším typom je FS v jednoužívateľských a jednoprogramových operačných systémoch. Hlavné funkcie v takejto FS sú zamerané na riešenie nasledujúcich úloh:

  • Pomenovanie súborov.
  • Programovacie rozhranie pre aplikácie.
  • Mapovanie logického modelu FS na fyzickú organizáciu dátového skladu.
  • Odolnosť FS voči výpadkom napájania, chybám hardvéru a softvéru.

Úlohy FS sa stávajú zložitejšími v jednoužívateľských multi-taskingových operačných systémoch, ktoré sú navrhnuté pre prácu jedného používateľa, no umožňujú spúšťať viacero procesov súčasne. K úlohám uvedeným vyššie pribudla nová úloha – zdieľanie súboru z viacerých procesov.

Súbor je v tomto prípade zdieľaný zdroj, čo znamená, že FS musí vyriešiť celý rad problémov spojených s takýmito zdrojmi. Mali by sa poskytnúť najmä prostriedky na blokovanie súboru a jeho častí, koordináciu kópií, predchádzanie pretekom a odstraňovanie uviaznutia. V systémoch s viacerými používateľmi sa objavuje ďalšia úloha: Ochrana súborov jedného používateľa pred neoprávneným prístupom iného používateľa.

Funkcie súborového systému, ktorý funguje ako súčasť sieťového OS, sa stávajú ešte zložitejšími, je potrebné organizovať ochranu súbory jedného používateľa pred neoprávneným prístupom iného používateľa.

Hlavný účel systém súborov a zodpovedajúce systémy na správu súborov- organizácia pohodlnej správy súborov organizovaných ako súbory: namiesto nízkoúrovňového prístupu k údajom s konkrétnymi fyzickými adresami záznamu, ktorý potrebujeme, sa používa logický prístup s názvom súboru a záznamom v ňom.

Pojmy „súborový systém“ a „systém správy súborov“ je potrebné rozlišovať: súborový systém definuje predovšetkým princípy prístupu k údajom organizovaným ako súbory. A pojem „systém správy súborov“ by sa mal používať vo vzťahu ku konkrétnej implementácii súborového systému, t.j. ide o sadu softvérových modulov, ktoré zabezpečujú prácu so súbormi v konkrétnom OS.

Príklad

Súborový systém FAT (file alokačná tabuľka) má mnoho implementácií ako systém správy súborov.

  • Systém vyvinutý pre prvé počítače sa volal jednoducho FAT (teraz sa volá len FAT-12). Bol navrhnutý na prácu s disketami a nejaký čas sa používal aj na prácu s pevnými diskami.
  • Potom sa zlepšila práca s väčšími pevnými diskami a táto nová implementácia sa nazývala FAT-16. tento názov sa používa aj vo vzťahu k SUF samotného MS-DOS.
  • Implementácia FAT pre OS/2 sa nazýva super-FAT (hlavným rozdielom je schopnosť podporovať rozšírené atribúty pre každý súbor).
  • Existuje verzia SUF pre Windows 9x/NT atď. (FAT-32).

Typy súborov

bežné súbory: obsahujú informácie ľubovoľného charakteru, ktoré do nich používateľ zadáva alebo ktoré sa vytvárajú ako výsledok prevádzky systémových a používateľských programov. Obsah bežného súboru je určený aplikáciou, ktorá s ním pracuje.

Normálne súbory môžu byť dvoch typov:

  1. softvér(spustiteľný) - sú programy napísané v príkazovom jazyku OS a vykonávajú niektoré systémové funkcie (majú prípony .exe, .com, .bat).
  2. Dátové súbory– všetky ostatné typy súborov: textové a grafické dokumenty, tabuľky, databázy atď.

Katalógy- toto je na jednej strane skupina súborov, ktoré používateľ na základe určitých úvah skombinoval (napríklad súbory obsahujúce herné programy alebo súbory, ktoré tvoria jeden softvérový balík), a na druhej strane ide o špeciálny typ súborov, ktoré obsahujú informácie o systémovej pomoci o množine súborov zoskupených používateľmi podľa nejakej neformálnej funkcie (typ súboru, umiestnenie na disku, prístupové práva, dátum vytvorenia a úpravy).

Špeciálne súbory sú fiktívne súbory spojené s I/O zariadeniami, ktoré sa používajú na zjednotenie mechanizmu na prístup k súborom a externým zariadeniam. Špeciálne súbory umožňujú používateľovi vykonávať I/O operácie prostredníctvom bežných príkazov na zápis alebo čítanie súborov. Tieto príkazy sú najskôr spracované programami FS a potom, v určitej fáze požiadavky, ich operačný systém skonvertuje na príkazy na ovládanie príslušného zariadenia (PRN, LPT1 - pre port tlačiarne (symbolické názvy, pre OS - toto sú súbory), CON - pre klávesnicu).

Príklad. Kopírovať con text1 (pri práci s klávesnicou).

Štruktúra súboru

Štruktúra súboru- celá množina súborov na disku a vzťahy medzi nimi (poradie, v akom sú súbory uložené na disku).

Typy súborových štruktúr:

  • jednoduché, alebo jednoúrovňový: Adresár je lineárna postupnosť súborov.
  • hierarchické alebo viacúrovňový: adresár môže byť sám súčasťou iného adresára a obsahovať v ňom veľa súborov a podadresárov. Hierarchická štruktúra môže byť dvoch typov: "Strom" a "Sieť". Adresáre tvoria „Strom“, ak má súbor povolený vstup len do jedného adresára (MS-DOS, OS Windows) a „Sieť“ – ak je možné súbor zaradiť do viacerých adresárov naraz (UNIX).
  • Štruktúru súboru možno znázorniť ako graf, ktorý popisuje hierarchiu adresárov a súborov:



Typy názvov súborov

Súbory sú označené názvami. Používatelia dávajú súbory symbolické mená, pričom sa zohľadňujú obmedzenia operačného systému týkajúce sa použitých znakov a dĺžky názvu. V skorých súborových systémoch boli tieto hranice veľmi úzke. Takže v populárnom súborový systém FAT dĺžka mien je obmedzená známou schémou 8.3 (8 znakov - samotný názov, 3 znaky - prípona mena) a v UNIX System V názov nemôže obsahovať viac ako 14 znakov.

Pre používateľa je však oveľa pohodlnejšie pracovať s dlhými názvami, pretože vám umožňujú dať súboru skutočne mnemotechnický názov, podľa ktorého si aj po dostatočne dlhom čase bude možné zapamätať, čo tento súbor obsahuje. Preto moderné súborové systémy majú tendenciu podporovať dlhé symbolické názvy súborov.

Napríklad Windows NT vo svojom súborovom systéme NTFS špecifikuje, že názov súboru môže mať dĺžku až 255 znakov, nepočítajúc koncový znak null.

Prechod na dlhé názvy predstavuje problém s kompatibilitou so staršími aplikáciami, ktoré používajú krátke názvy. Aby aplikácie mohli pristupovať k súborom podľa predchádzajúcich konvencií, súborový systém musí byť schopný poskytnúť ekvivalentné krátke názvy (aliasy) súborom, ktoré majú dlhé názvy. Jednou z dôležitých úloh je teda problém generovania vhodných krátkych názvov.

Symbolické mená môžu byť troch typov: jednoduché, zložené a relatívne:

  1. jednoduchý názov identifikuje súbor v rovnakom adresári, priradený k súborom na základe nomenklatúry znakov a dĺžky názvu.
  2. Celé meno je reťaz jednoduchých symbolických názvov všetkých adresárov, cez ktoré prechádza cesta od koreňa k danému súboru, názvu jednotky, názvu súboru. Takže celé meno je zložený, v ktorom sú jednoduché názvy od seba oddelené oddeľovačom akceptovaným v OS.
  3. Súbor možno tiež identifikovať relatívne meno. Relatívny názov súboru je definovaný prostredníctvom konceptu "aktuálneho adresára". V každom okamihu je jeden z adresárov aktuálny a tento adresár si vyberá sám užívateľ na príkaz OS. Súborový systém opravuje názov aktuálneho adresára, aby ho bolo možné použiť spolu s relatívnymi názvami na vytvorenie celého súboru.

V stromovej štruktúre súborov existuje vzájomná zhoda medzi súborom a jeho úplným názvom – „jeden súbor – jedno celé meno“. V sieťovej štruktúre súborov môže byť súbor zahrnutý do niekoľkých adresárov, a preto môže mať niekoľko úplných mien; tu je korešpondencia pravdivá - "jeden súbor - veľa celých mien."

Pre súbor 2.doc definujte všetky tri typy názvu za predpokladu, že aktuálny adresár je adresár 2008_year.

  • Jednoduchý názov: 2.doc
  • Celé meno: C:\2008_rok\Dokumenty\2.doc
  • Relatívne meno: Documents\2.doc

Atribúty súboru

Atribúty sú dôležitou charakteristikou súboru. Atribúty je informácia popisujúca vlastnosti súborov. Príklady možných atribútov súboru:

  • príznak "Iba na čítanie";
  • Podpíšte "skrytý súbor" (Skrytý);
  • Podpíšte "systémový súbor" (Systém);
  • Podpíšte "archívny súbor" (Archív);
  • Typ súboru (bežný súbor, adresár, špeciálny súbor);
  • vlastník súboru;
  • tvorca súboru;
  • Heslo na prístup k súboru;
  • Informácie o povolených operáciách prístupu k súborom;
  • Čas vytvorenia, posledný prístup a posledná úprava;
  • Aktuálna veľkosť súboru;
  • Maximálna veľkosť súboru;
  • Podpíšte "dočasné (odstrániť po dokončení procesu)";
  • Blokový znak.

Rôzne typy súborových systémov môžu na charakterizáciu súborov používať rôzne sady atribútov (napríklad v operačnom systéme pre jedného používateľa sada atribútov nebude obsahovať charakteristiky súvisiace s používateľom a ochranou (tvorca súboru, heslo na prístup k súboru atď.). .).

Používateľ môže pristupovať k atribútom pomocou prostriedkov, ktoré na tento účel poskytuje súborový systém. Zvyčajne môžete čítať hodnoty ľubovoľného atribútu, ale zmeniť len niektoré, napríklad môžete zmeniť povolenia súboru, ale nemôžete zmeniť dátum vytvorenia alebo aktuálnu veľkosť súboru.

Povolenia súboru

Definovať prístupové práva k súborom znamená definovať pre každého používateľa súbor operácií, ktoré môže aplikovať na daný súbor. Rôzne súborové systémy môžu mať svoj vlastný zoznam operácií diferencovaného prístupu. Tento zoznam môže zahŕňať nasledujúce operácie:

  • vytvorenie súboru.
  • zničenie súboru.
  • zápis do súboru.
  • otvorenie súboru.
  • zatvorenie súboru.
  • čítanie zo súboru.
  • pridanie súboru.
  • vyhľadávanie súborov.
  • získanie atribútov súboru.
  • nastavenie nových hodnôt atribútov.
  • premenovanie.
  • vykonanie súboru.
  • čítanie katalógu a pod.

V najvšeobecnejšom prípade prístupové práva možno opísať maticou prístupových práv, v ktorej stĺpce zodpovedajú všetkým súborom v systéme, riadky všetkým používateľom a povolené operácie sú označené na priesečníku riadkov a stĺpcov:

V niektorých systémoch môžu byť používatelia rozdelení do samostatných kategórií. Pre všetkých používateľov jednej kategórie sú definované jednotné prístupové práva, napríklad v systéme UNIX sú všetci používatelia rozdelení do troch kategórií: vlastník súboru, členovia jeho skupiny a všetci ostatní.

FAT32: Starý systém Windows používaný na malých vymeniteľných médiách. Používa sa na malých úložných zariadeniach alebo na kompatibilitu s digitálnymi fotoaparátmi, hernými konzolami, set-top boxmi a inými zariadeniami s FAT32.

NTFS: moderné verzie systému Windows počnúc Win XP ho používajú pre svoje oddiely. Externé médiá sú naformátované na FAT32, veľké externé pevné disky s kapacitou 1 TB sú naformátované na NTFS.

HFS+ Odpoveď: Počítače Macintosh používajú HFS+ pre svoje interné oddiely, ako aj pre formátovanie externých médií pomocou HFS+. Mac číta a zapisuje súbory vo FAT32, ale štandardne číta iba NTFS. Na zápis vo formáte NTFS Macintosh budete potrebovať softvér tretej strany.

Ext2 / Ext3 / Ext4: nájdené v Linuxe. ext2 je starší FS a chýbajú mu dôležité funkcie ako logovanie – ak vypadne prúd alebo sa počítač reštartuje počas zápisu na ext2 disk, môže dôjsť k strate dát. Ext3 pridáva funkcie spoľahlivosti na úkor rýchlosti. Ext4 sa ukazuje ako aktuálnejší, rýchlejší a štandardnejší systém pre väčšinu distribúcií Linuxu a funguje rýchlejšie. Win a Mac nepodporujú Ext2 / Ext3 / Ext4 - na prístup k súborom budete potrebovať ďalší nástroj. Z tohto dôvodu je často ideálne naformátovať oddiely Linuxu ako ext4 a ponechať vymeniteľné zariadenia naformátované na FAT32 alebo NTFS, ak je potrebná kompatibilita s inými operačnými systémami. Linux číta a zapisuje na FAT32 aj NTFS.

btrfs: vytvorené pre Linux, vo vývoji. V súčasnosti to nie je štandard pre väčšinu linuxových distribúcií, ale Btrfs sa čoskoro ujme vedenia. Cieľom je poskytnúť ďalšie funkcie, ktoré umožnia Linuxu škálovať pre väčšie úložisko.

Vymeňte: v Linuxe sa „swap“ nezdá byť súborovým systémom. Oddiel naformátovaný ako „swap“ sa používa iba ako odkladací priestor OS – podobne ako stránkovací súbor v systéme Windows, ale vyžaduje si vyhradený oddiel.

Súborové systémy pre externé USB disky

Všetky externé disky majú tiež svoje vlastné systémy súborov:

  • TUK- FS vyvinutý spoločnosťou Microsoft Corporation je najpoužívanejší na pamäťových kartách a USB flash diskoch. Používa sa v domácich spotrebičoch, ako sú: videokamera, TV, DVD prehrávač, hudobné centrum. Obmedzením je, že má maximálnu veľkosť súboru 4 GB.
  • exFAT- vytvorená spoločnosťou Microsoft, rozšírená verzia FAT, používaná pre flash zariadenia. Boli zrušené obmedzenia veľkosti súborov, objemu partícií. Nevýhoda: Nie je podporovaná väčšinou spotrebiteľských zariadení a skorých verzií Win XP.
  • FFS2- Vytvorené v roku 1990 a patentované spoločnosťou Microsoft. Pokračoval systém FFS1, jeden z prvých FS pre flash karty.
  • JFFS- log-štruktúrovaný Linux systém pre NOR-usb-nosičov.
  • JFFS2- používané v zariadeniach s flash pamäťou. Nasledovník JFFS. Podporuje zariadenia Nand, lepší výkon. Ťažkosti pri práci s veľkými flash diskami.
  • logfs- vo vývoji, používa sa pre Linux, nahrádza JFFS2. Vylepšené pre rýchlu montáž veľkokapacitných flash diskov.
  • YAFFS- určený pre NAND-flash, použitie v NOR-flash diskoch je možné.

Prečo smartfón nemôže spúšťať programy z pamäťovej karty? Ako sa ext4 zásadne líši od ext3? Prečo flash disk vydrží dlhšie, ak je naformátovaný na NTFS a nie na FAT? Aký je hlavný problém F2FS? Odpovede spočívajú v štruktúre súborových systémov. Budeme o nich hovoriť.

Úvod

Súborové systémy definujú spôsob ukladania údajov. Určujú, s akými obmedzeniami sa používateľ stretne, aké rýchle budú operácie čítania a zápisu a ako dlho bude disk fungovať bez zlyhania. To platí najmä pre lacné SSD a ich mladších bratov - flash disky. Poznaním týchto funkcií môžete vyťažiť maximum z akéhokoľvek systému a optimalizovať jeho využitie pre konkrétne úlohy.

Vždy, keď potrebujete urobiť niečo netriviálne, musíte si vybrať typ a parametre súborového systému. Napríklad chcete zrýchliť najčastejšie operácie so súbormi. Na úrovni súborového systému to možno dosiahnuť rôznymi spôsobmi: indexovanie poskytne rýchle vyhľadávanie a predbežná rezervácia voľných blokov uľahčí prepisovanie často sa meniacich súborov. Predbežná optimalizácia údajov v pamäti RAM zníži množstvo požadovaných I/O.

Vlastnosti moderných súborových systémov, ako je lenivé písanie, deduplikácia a ďalšie pokročilé algoritmy, pomáhajú zvýšiť dobu prevádzkyschopnosti. Sú relevantné najmä pre lacné SSD s pamäťovými čipmi TLC, flash disky a pamäťové karty.

Pre diskové polia rôznych úrovní existujú samostatné optimalizácie: napríklad súborový systém môže podporovať zjednodušené zrkadlenie zväzkov, okamžité snímky alebo dynamické škálovanie bez vypnutia zväzku.

Čierna krabica

Používatelia pracujú najmä so súborovým systémom, ktorý štandardne ponúka operačný systém. Málokedy vytvárajú nové diskové oddiely a ešte menej často premýšľajú o svojich nastaveniach - stačí použiť odporúčané nastavenia alebo dokonca kúpiť vopred naformátované médium.

Pre fanúšikov systému Windows je všetko jednoduché: NTFS na všetkých oddieloch disku a FAT32 (alebo rovnaký NTFS) na jednotkách flash. Ak existuje NAS a používa sa v ňom nejaký iný súborový systém, potom to pre väčšinu zostáva mimo vnímania. Jednoducho sa k nemu pripoja cez sieť a sťahujú súbory ako z čiernej skrinky.

Na mobilných zariadeniach so systémom Android sa ext4 najčastejšie nachádza vo vnútornej pamäti a FAT32 na kartách microSD. Yabloko sa vôbec nestará o to, aký majú súborový systém: HFS +, HFSX, APFS, WTFS ... pre nich existujú iba krásne ikony priečinkov a súborov nakreslené najlepšími dizajnérmi. Používatelia Linuxu majú najbohatší výber, ale môžete spojiť podporu pre systémy súborov iných ako natívny operačný systém v systéme Windows aj macOS – viac o tom neskôr.

spoločné korene

Bolo vytvorených viac ako sto rôznych súborových systémov, ale o niečo viac ako tucet možno nazvať relevantnými. Hoci boli všetky navrhnuté pre ich špecifické aplikácie, mnohé z nich boli spojené na koncepčnej úrovni. Sú podobné, pretože používajú rovnaký typ štruktúry reprezentácie (meta)údajov – B-stromy („b-stromy“).

Ako každý hierarchický systém, B-strom začína koreňovou položkou a potom sa rozvetvuje na posledné prvky – jednotlivé položky o súboroch a ich atribútoch alebo „listoch“. Hlavným dôvodom vytvorenia takejto logickej štruktúry bolo zrýchlenie vyhľadávania objektov súborového systému na veľkých dynamických poliach – ako sú pevné disky s kapacitou niekoľkých terabajtov alebo ešte pôsobivejšie polia RAID.

B-stromy vyžadujú na vykonávanie rovnakých operácií oveľa menej prístupov na disk ako iné typy vyvážených stromov. To je dosiahnuté vďaka skutočnosti, že konečné objekty v B-stromoch sú hierarchicky umiestnené v rovnakej výške a rýchlosť všetkých operácií je práve úmerná výške stromu.

Rovnako ako ostatné vyrovnané stromy, B-stromy majú rovnakú dĺžku ciest od koreňa k akémukoľvek listu. Namiesto toho, aby vyrastali, viac sa rozvetvujú a rozširujú: všetky body vetvenia v B-strome ukladajú veľa odkazov na ich podriadené objekty, vďaka čomu ich možno ľahko nájsť pri menšom počte zásahov. Veľký počet ukazovateľov znižuje počet najdlhších diskových operácií – polohovanie hlavy pri čítaní ľubovoľných blokov.

Koncept B-stromov bol sformulovaný už v sedemdesiatych rokoch a odvtedy prešiel rôznymi vylepšeniami. V tej či onej forme je implementovaný v NTFS, BFS, XFS, JFS, ReiserFS a rôznych DBMS. Všetci sú príbuzní z hľadiska základných princípov organizácie údajov. Rozdiely sa týkajú detailov, často dosť dôležitých. Spoločná je aj nevýhoda súvisiacich súborových systémov: všetky boli vytvorené na prácu s diskami ešte pred príchodom SSD.

Flash pamäť ako motor pokroku

Jednotky SSD postupne nahrádzajú diskové jednotky, no zatiaľ sú nútené používať staršie súborové systémy, ktoré sú im cudzie. Sú postavené na poliach flash pamäte, ktorých princípy sa líšia od princípov diskových zariadení. Najmä flash pamäť sa musí pred zápisom vymazať a túto operáciu v čipoch NAND nemožno vykonať na úrovni jednotlivých buniek. Je to možné len pre veľké bloky ako celok.

Toto obmedzenie je spôsobené tým, že v pamäti NAND sú všetky bunky spojené do blokov, z ktorých každý má len jedno spoločné spojenie s riadiacou zbernicou. Nebudeme zachádzať do detailov organizácie stránky a vykresľovať celú hierarchiu. Dôležitý je princíp skupinových operácií s bunkami a skutočnosť, že veľkosti blokov flash pamäte sú zvyčajne väčšie ako bloky adresované v akomkoľvek súborovom systéme. Preto musia byť všetky adresy a príkazy pre disky s NAND flash preložené cez abstrakciu FTL (Flash Translation Layer).

Radiče flash pamäte poskytujú kompatibilitu s logikou diskových zariadení a podporu ich natívnych príkazov rozhrania. FTL je zvyčajne implementované v ich firmvéri, ale môže byť (čiastočne) spustené na hostiteľovi - napríklad Plextor píše ovládače na zrýchlenie zápisu pre svoje SSD.

Bez FTL sa vôbec nezaobídete, keďže aj zápis jedného bitu do konkrétnej bunky vedie k spusteniu celého radu operácií: radič nájde blok obsahujúci požadovanú bunku; blok sa prečíta celý, zapíše sa do vyrovnávacej pamäte alebo do voľného miesta, potom sa celý vymaže a potom sa prepíše späť s potrebnými zmenami.

Tento prístup pripomína každodenný život v armáde: aby seržant vydal rozkaz jednému vojakovi, vytvorí všeobecnú formáciu, vyradí úbožiaka z akcie a ostatným prikáže, aby sa rozišli. V dnes už vzácnej pamäti NOR bola organizácia spetsnaz: každá bunka bola riadená nezávisle (každý tranzistor mal individuálny kontakt).

Radiče majú stále viac úloh, pretože s každou generáciou flash pamäte klesá výrobný proces jej výroby, aby sa zvýšila hustota a znížili náklady na ukladanie dát. Spolu s technologickými štandardmi sa znižuje aj odhadovaná životnosť čipov.

Moduly s jednoúrovňovými bunkami SLC mali deklarovaný zdroj 100 000 prepisovacích cyklov a ešte viac. Mnohé z nich stále fungujú na starých flash diskoch a CF kartách. Podniková trieda MLC (eMLC) si vyžiadala zdroj v rozmedzí 10 až 20 tisíc, zatiaľ čo pre bežné spotrebiteľské MLC sa odhaduje na 3-5 tisíc. Tento typ pamäte je aktívne vytláčaný ešte lacnejším TLC, ktorého zdroje sotva dosahujú tisíc cyklov. Udržiavanie životnosti flash pamäte na prijateľnej úrovni je spôsobené softvérovými trikmi a jedným z nich sa stávajú nové súborové systémy.

Pôvodne výrobcovia predpokladali, že súborový systém nie je dôležitý. Samotný ovládač musí obsluhovať krátkodobé pole pamäťových buniek akéhokoľvek typu, pričom medzi ne rozdeľuje záťaž optimálnym spôsobom. Pre ovládač súborového systému napodobňuje bežný disk a sám vykonáva nízkoúrovňové optimalizácie pri akomkoľvek prístupe. V praxi sa však optimalizácia pre rôzne zariadenia líši od magickej po fiktívnu.

V podnikových SSD diskoch je integrovaný radič malý počítač. Má veľkú vyrovnávaciu pamäť (pol giga alebo viac) a podporuje mnoho metód na zlepšenie efektívnosti práce s údajmi, čo vám umožňuje vyhnúť sa zbytočným cyklom zápisu. Čip usporiada všetky bloky vo vyrovnávacej pamäti, vykonáva lenivé zápisy, vykonáva deduplikáciu za chodu, rezervuje niektoré bloky a ostatné vymaže na pozadí. Všetko toto kúzlo sa deje absolútne nepostrehnuteľne pre OS, programy a používateľa. Pri takomto SSD je naozaj jedno, aký súborový systém sa použije. Interné optimalizácie majú oveľa väčší vplyv na výkon a zdroje ako externé.

V lacných SSD (a ešte viac - flash diskoch) dávajú oveľa menej inteligentných ovládačov. Vyrovnávacia pamäť v nich je skrátená alebo chýba a pokročilé serverové technológie sa vôbec nepoužívajú. V pamäťových kartách sú ovládače také primitívne, že sa často tvrdí, že vôbec neexistujú. Preto pre lacné zariadenia s flash pamäťou zostávajú relevantné externé metódy vyrovnávania záťaže - predovšetkým pomocou špecializovaných súborových systémov.

Od JFFS po F2FS

Jedným z prvých pokusov napísať súborový systém, ktorý by zohľadňoval princípy organizácie flash pamäte, bol JFFS – Journaling Flash File System. Spočiatku bol tento vývoj švédskej spoločnosti Axis Communications zameraný na zlepšenie pamäťovej efektivity sieťových zariadení, ktoré Axis vyrábal v deväťdesiatych rokoch. Prvá verzia JFFS podporovala iba pamäť NOR, no už v druhej verzii sa skamarátila s NAND.

JFFS2 má v súčasnosti obmedzené využitie. Stále sa väčšinou používa v linuxových distribúciách pre vstavané systémy. Nachádza sa v smerovačoch, IP kamerách, NAS a iných návykoch internetu vecí. Vo všeobecnosti všade tam, kde sa vyžaduje malé množstvo spoľahlivej pamäte.

Ďalším vývojom JFFS2 bol LogFS, ktorý uchovával svoje inody v samostatnom súbore. Autormi tohto nápadu sú zamestnanec nemeckej divízie IBM Jörn Engel a pedagóg na univerzite v Osnabrücku Robert Mertens. Zdrojový kód pre LogFS je dostupný na GitHub. Súdiac podľa skutočnosti, že posledná zmena bola vykonaná pred štyrmi rokmi, LogFS si nezískal popularitu.

Tieto pokusy však podnietili vznik ďalšieho špecializovaného súborového systému - F2FS. Vyvinula ho spoločnosť Samsung Corporation, ktorá tvorí veľkú časť vyrobených flash pamätí na svete. Samsung vyrába čipy NAND Flash pre svoje vlastné zariadenia a na objednávku iných spoločností a tiež vyvíja SSD disky so zásadne novými rozhraniami namiesto starých diskov. Vytvorenie špecializovaného súborového systému optimalizovaného pre flash pamäte bolo z pohľadu Samsungu dlho očakávanou nevyhnutnosťou.

Pred štyrmi rokmi, v roku 2012, Samsung vytvoril F2FS (Flash Friendly File System). Jej nápad je dobrý, ale prevedenie bolo trochu kostrbaté. Kľúčová úloha pri vytváraní F2FS bola jednoduchá: znížiť počet operácií prepisovania buniek a rozložiť na ne čo najrovnomernejšie zaťaženie. To si vyžaduje vykonávanie operácií na viacerých bunkách v rámci toho istého bloku súčasne, namiesto toho, aby ste ich museli nútiť jednu po druhej. To znamená, že nepotrebujeme okamžité prepísanie existujúcich blokov na prvú žiadosť OS, ale ukladanie príkazov a dát do vyrovnávacej pamäte, pridávanie nových blokov do voľného miesta a odložené vymazávanie buniek.

Dnes je podpora F2FS už oficiálne implementovaná v Linuxe (a teda aj v Androide), ale v praxi stále neprináša žiadne konkrétne výhody. Hlavná vlastnosť tohto súborového systému (oneskorené prepisovanie) viedla k predčasným záverom o jeho účinnosti. Starý trik s cachovaním dokonca oklamal staršie verzie benchmarkov, kde F2FS vykazovalo pomyselnú výhodu nie o pár percent (ako sa očakávalo) a dokonca ani nie o niekoľkonásobok, ale o rádovo. Ide len o to, že ovládač F2FS nahlásil operáciu, ktorú ovládač práve plánoval urobiť. Ak je však skutočný nárast výkonu F2FS malý, opotrebenie buniek bude určite menšie ako pri použití rovnakého ext4. Tie optimalizácie, ktoré lacný radič nedokáže, sa vykonajú na úrovni samotného súborového systému.

Rozsahy a bitmapy

Zatiaľ čo F2FS je pre geekov vnímaný ako exotický. Dokonca aj vlastné smartfóny Samsung stále používajú ext4. Mnohí to považujú za ďalší vývoj ext3, no nie je to celkom pravda. Ide skôr o revolúciu ako o prelomenie hranice 2 TB na súbor a jednoduché zvýšenie ďalších kvantitatívnych ukazovateľov.

Keď boli počítače veľké a súbory malé, adresovanie bolo jednoduché. Každému súboru bol pridelený určitý počet blokov, ktorých adresy boli zapísané do tabuľky korešpondencie. Takto fungoval súborový systém ext3, ktorý je v prevádzke doteraz. Ext4 však zaviedol zásadne odlišný spôsob adresovania – rozsahy.

Rozsahy možno považovať za rozšírenia inódov ako samostatné sady blokov, ktoré sú adresované ako celok ako súvislé sekvencie. Jeden rozsah môže obsahovať celý stredne veľký súbor a pre veľké súbory stačí prideliť tucet alebo dva rozsahy. Je to oveľa efektívnejšie ako adresovanie stoviek tisíc malých blokov po štyroch kilobajtoch.

Zmenené v ext4 a samotnom nahrávacom mechanizme. Teraz dôjde k distribúcii blokov okamžite v jednej požiadavke. A to nie vopred, ale bezprostredne pred zápisom dát na disk. Odložená alokácia viacerých blokov vám umožňuje zbaviť sa nepotrebných operácií, ktoré ext3 zhrešil: v ňom boli bloky pre nový súbor pridelené okamžite, aj keď sa úplne zmestil do vyrovnávacej pamäte a bol plánovaný na dočasné odstránenie.


Diéta s obmedzením tukov

Okrem vyvážených stromov a ich modifikácií existujú aj ďalšie obľúbené logické štruktúry. Existujú súborové systémy so zásadne odlišným typom organizácie - napríklad lineárne. Pravdepodobne aspoň jeden z nich používate často.

Tajomstvo

Uhádnite hádanku: v dvanástich začala priberať, v šestnástich bola hlúpo tučná a v tridsiatich dvoch rokoch sa stala tučnou a zostala jednoduchá. Kto je ona?

Správne, toto je príbeh o súborovom systéme FAT. Požiadavky na kompatibilitu jej zabezpečili zlú dedičnosť. Na disketách to bolo 12-bitové, na pevných diskoch - najskôr 16-bitové a v dnešnej dobe to bolo 32-bitové. V každej ďalšej verzii sa počet adresovateľných blokov zvyšoval, no v podstate sa nič nezmenilo.

Stále populárny súborový systém FAT32 sa objavil už pred dvadsiatimi rokmi. Dnes je stále primitívny a nepodporuje zoznamy riadenia prístupu, diskové kvóty, kompresiu na pozadí ani iné moderné technológie na optimalizáciu dát.

Prečo je v dnešnej dobe potrebný FAT32? Stále len kvôli kompatibilite. Výrobcovia sa správne domnievajú, že každý operačný systém dokáže čítať oblasť FAT32. Preto ho vytvárajú na externých pevných diskoch, USB Flash a pamäťových kartách.

Ako uvoľniť flash pamäť smartfónu

Karty microSD(HC) používané v smartfónoch sú štandardne naformátované na FAT32. To je hlavnou prekážkou inštalácie aplikácií na ne a prenosu dát z internej pamäte. Aby ste to prekonali, musíte na karte vytvoriť oddiel s ext3 alebo ext4. Dajú sa doň preniesť všetky atribúty súborov (vrátane vlastníka a prístupových práv), takže každá aplikácia môže fungovať, ako keby bola spustená z internej pamäte.

Systém Windows nevie, ako vytvoriť viac ako jeden oddiel na jednotkách flash, ale na tento účel môžete spustiť Linux (aspoň vo virtuálnom stroji) alebo pokročilý nástroj na prácu s logickými oddielmi - napríklad MiniTool Partition Wizard Free. Po nájdení ďalšej primárnej partície s ext3 / ext4 na karte ponúkne aplikácia Link2SD a podobné aplikácie oveľa viac možností ako v prípade jednej FAT32 partície.


Ako ďalší argument v prospech voľby FAT32 sa často nazýva nedostatok prihlasovania, čo znamená rýchlejšie operácie zápisu a menšie opotrebovanie pamäťových buniek NAND Flash. V praxi vedie použitie FAT32 k opaku a spôsobuje mnoho ďalších problémov.

Flash disky a pamäťové karty jednoducho rýchlo zomierajú, pretože akákoľvek zmena v FAT32 spôsobí prepísanie tých istých sektorov, kde sa nachádzajú dva reťazce tabuliek súborov. Uložil som celú webovú stránku a stokrát sa prepísala - s každým pridaním ďalšieho malého gifu na flash disk. Spustený prenosný softvér? Vytváral dočasné súbory a pri práci ich neustále mení. Preto je oveľa lepšie používať NTFS na flash diskoch s tabuľkou $ MFT odolnou voči chybám. Malé súbory je možné ukladať priamo do hlavnej tabuľky súborov a jej prípony a kópie sa zapisujú do rôznych oblastí flash pamäte. Navyše vďaka indexovaniu na NTFS je vyhľadávanie rýchlejšie.

INFO

Pre FAT32 a NTFS nie sú stanovené teoretické limity úrovne vnorenia, ale v praxi sú rovnaké: v adresári prvej úrovne je možné vytvoriť iba 7707 podadresárov. Tí, ktorí sa radi hrajú na hniezdiace bábiky, to ocenia.

Ďalším problémom, s ktorým sa stretáva väčšina používateľov, je, že nie je možné zapísať súbor väčší ako 4 GB do oblasti FAT32. Dôvodom je, že vo FAT32 je veľkosť súboru opísaná 32 bitmi v tabuľke prideľovania súborov a 2^32 (mínus jeden, aby som bol presný) sú presne štyri gigabajty. Ukazuje sa, že na čerstvo zakúpený flash disk sa nedá zapísať ani film v bežnej kvalite, ani obraz DVD.

Kopírovanie veľkých súborov nie je také zlé: keď sa o to pokúsite, chyba je aspoň okamžite viditeľná. V iných situáciách funguje FAT32 ako časovaná bomba. Napríklad ste si skopírovali prenosný softvér na flash disk a spočiatku ho bez problémov používate. Po dlhšom čase má niektorý z programov (napríklad účtovníctvo alebo pošta) databázu, ktorá sa nafúkne a ... jednoducho sa prestane aktualizovať. Súbor nie je možné prepísať, pretože dosiahol limit 4 GB.

Menej zrejmým problémom je, že v systéme FAT32 môže byť dátum vytvorenia súboru alebo adresára určený do dvoch sekúnd. To je nedostatočné pre mnohé kryptografické aplikácie, ktoré používajú časové pečiatky. Nízka presnosť atribútu „date“ je ďalším dôvodom, prečo sa FAT32 z bezpečnostného hľadiska nepovažuje za kompletný súborový systém. Jeho slabé stránky však môžete využiť na vlastné účely. Ak napríklad skopírujete akékoľvek súbory z oddielu NTFS na zväzok FAT32, odstránia sa z nich všetky metadáta, ako aj zdedené a špeciálne nastavené povolenia. FAT ich jednoducho nepodporuje.

exFAT

Na rozdiel od FAT12/16/32 bol exFAT navrhnutý špeciálne pre USB Flash a veľké (≥ 32 GB) pamäťové karty. Rozšírený FAT odstraňuje vyššie spomenutú nevýhodu FAT32 – prepísanie rovnakých sektorov pri akejkoľvek zmene. Ako 64-bitový systém nemá žiadne praktické obmedzenia na veľkosť jedného súboru. Teoreticky môže mať dĺžku 2 ^ 64 bajtov (16 EB) a karty tejto veľkosti sa čoskoro neobjavia.

Ďalším zásadným rozdielom medzi exFAT je podpora zoznamov riadenia prístupu (ACL). Už to nie je jednoduchá vec z deväťdesiatych rokov, ale blízkosť formátu bráni zavedeniu exFAT. Podpora ExFAT je plne a legálne implementovaná iba vo Windows (od XP SP2) a OS X (od 10.6.5). V Linuxe a *BSD je podporovaný buď obmedzene, alebo nelegálne. Microsoft vyžaduje licencie na používanie exFAT a v tejto oblasti existuje veľa právnych sporov.

btrfs

Ďalší prominentný súborový systém B-stromu sa nazýva Btrfs. Tento FS sa objavil v roku 2007 a bol pôvodne vytvorený v Oracle s ohľadom na prácu s SSD a RAID. Môže sa napríklad dynamicky škálovať: vytvorte nové inody priamo na spustenom systéme alebo rozdeľte zväzok na podzväzky bez pridelenia voľného miesta.

Mechanizmus kopírovania pri zápise implementovaný v Btrfs a plná integrácia s modulom jadra Device mapper vám umožňuje vytvárať takmer okamžité snímky prostredníctvom virtuálnych blokových zariadení. Predkompresia dát (zlib alebo lzo) a deduplikácia urýchľujú základné operácie a zároveň predlžujú životnosť flash pamäte. Je to viditeľné najmä pri práci s databázami (dosahuje sa 2- až 4-násobná kompresia) a malými súbormi (zapisujú sa do usporiadaných veľkých blokov a možno ich ukladať priamo do „listov“).

Btrfs tiež podporuje úplné protokolovanie (údaje a metaúdaje), kontrolu objemu bez odpojenia a mnoho ďalších moderných funkcií. Kód Btrfs je zverejnený pod licenciou GPL. Tento súborový systém je na Linuxe podporovaný ako stabilný od verzie jadra 4.3.1.

Denníky

Takmer všetky viac či menej moderné súborové systémy (ext3 / ext4, NTFS, HFSX, Btrfs a ďalšie) patria do všeobecnej skupiny žurnálovaných, pretože zaznamenávajú zmeny vykonané v samostatnom protokole (časopise) a kontrolujú ho v prípade zlyhania počas diskových operácií. Avšak granularita protokolovania a odolnosť voči chybám sa medzi týmito súborovými systémami líšia.

ext3 podporuje tri režimy protokolovania: spätná slučka, usporiadané a úplné protokolovanie. Prvý režim zahŕňa zápis iba všeobecných zmien (metadát), vykonávaných asynchrónne vzhľadom na zmeny v samotných údajoch. Druhý režim vykonáva rovnaký zápis metadát, ale prísne pred vykonaním akýchkoľvek zmien. Tretí režim je ekvivalentný úplnému protokolovaniu (zmeny v metadátach aj v samotných súboroch).

Iba posledná možnosť poskytuje integritu údajov. Ďalšie dva len urýchľujú odhaľovanie chýb pri kontrole a zaručujú obnovenie integrity samotného súborového systému, nie však obsahu súborov.

Žurnálovanie v NTFS je podobné ako druhý režim protokolovania v ext3. Zaprotokolujú sa iba zmeny metadát a samotné údaje sa môžu v prípade zlyhania stratiť. Tento spôsob žurnálovania v NTFS nebol zamýšľaný ako spôsob dosiahnutia maximálnej spoľahlivosti, ale len ako kompromis medzi rýchlosťou a odolnosťou voči chybám. To je dôvod, prečo ľudia, ktorí sú zvyknutí pracovať s plne žurnálovanými systémami, považujú NTFS za pseudožurnálovaný.

Prístup implementovaný v systéme NTFS je v niektorých smeroch dokonca lepší ako predvolený v ext3. Systém NTFS navyše pravidelne vytvára kontrolné body, aby sa zabezpečilo, že všetky predtým čakajúce operácie na disku budú dokončené. Kontrolné body nemajú nič spoločné s bodmi obnovenia v \System Volume Information\ . Toto sú len servisné záznamy v denníku.

Prax ukazuje, že vo väčšine prípadov takéto čiastočné žurnálovanie NTFS stačí na bezproblémovú prevádzku. Koniec koncov, ani pri prudkom výpadku prúdu sa diskové zariadenia neodpájajú okamžite. Napájací zdroj a početné kondenzátory v samotných mechanikách poskytujú len minimálne množstvo energie, ktoré stačí na dokončenie aktuálnej operácie zápisu. Pri moderných SSD diskoch s ich rýchlosťou a účinnosťou zvyčajne stačí rovnaké množstvo energie na vykonanie čakajúcich operácií. Pokus o prechod na úplné protokolovanie by občas znížil rýchlosť väčšiny operácií.

V systéme Windows pripájame súborové systémy tretích strán

Použitie súborových systémov je obmedzené ich podporou na úrovni OS. Windows si napríklad nerozumie s ext2/3/4 a HFS+, no niekedy ich treba použiť. Môžete to urobiť pridaním príslušného ovládača.

VÝSTRAHA

Väčšina ovládačov a doplnkov pre podporu súborových systémov tretích strán má svoje obmedzenia a nie vždy fungujú stabilne. Môžu byť v konflikte s inými ovládačmi, antivírusovými a virtualizačnými programami.

Open source ovládač pre čítanie a zápis ext2/3 partícií s čiastočnou podporou pre ext4. Najnovšia verzia podporuje rozsahy a partície až do 16 TB. LVM, zoznamy riadenia prístupu a rozšírené atribúty nie sú podporované.


K dispozícii je bezplatný plugin pre Total Commander. Podporuje čítanie ext2/3/4 oddielov.


coLinux je otvorený a bezplatný port linuxového jadra. Spolu s 32-bitovým ovládačom umožňuje spustiť Linux na Windows 2000 až 7 bez použitia virtualizačných technológií. Podporuje iba 32-bitové verzie. Vývoj 64-bitovej modifikácie bol zrušený. coLinux umožňuje okrem iného organizovať prístup k oddielom ext2/3/4 zo systému Windows. Podpora projektu bola v roku 2014 pozastavená.

Windows 10 už môže mať vstavanú podporu pre súborové systémy špecifické pre Linux, je len skrytá. Tieto myšlienky navrhuje ovládač na úrovni jadra Lxcore.sys a služba LxssManager, ktorú ako knižnicu načíta proces Svchost.exe. Viac o tom nájdete v prednáške Alexa Ionesca „The Linux Kernel Hidden Inside Windows 10“ na Black Hat 2016.


ExtFS pre Windows je platený ovládač vydaný spoločnosťou Paragon. Funguje na Windows 7 až 10, podporuje prístup na čítanie/zápis do zväzkov ext2/3/4. Poskytuje takmer úplnú podporu pre ext4 v systéme Windows.

HFS+ pre Windows 10 je ďalší proprietárny ovládač od Paragon Software. Napriek názvu funguje vo všetkých verziách systému Windows počnúc XP. Poskytuje plný prístup k súborovým systémom HFS+/HFSX na diskoch s ľubovoľným rozložením (MBR/GPT).

WinBtrfs je prvý vývoj ovládača Btrfs pre Windows. Už vo verzii 0.6 podporuje prístup na čítanie aj zápis do zväzkov Btrfs. Dokáže spracovať pevné a symbolické odkazy, podporuje alternatívne dátové toky, ACL, dva typy kompresie a asynchrónny režim čítania/zápisu. Zatiaľ čo WinBtrfs nevie, ako používať mkfs.btrfs, btrfs-balance a ďalšie nástroje na údržbu tohto súborového systému.

Možnosti a obmedzenia súborových systémov: súhrnná tabuľka

Systém súborov Maxi-malý objem-veľkosť Obmedzte veľkosť jedného súboru Dĺžka vlastného názvu súboru Polovičná dĺžka názvu súboru (vrátane cesty od koreňa) Obmedzte počet súborov a / alebo adresárov Presnosť uvedenia dátumu súboru / katalógu Dos-tu-pa práva Pevné odkazy Symbolické odkazy Okamžité injekcie žíl (snímky) Kompresia dát na pozadí Cipher-ro-va-nie dáta na pozadí Dedu-pli-ka-tion dáta
FAT16 2 GB v 512 bajtových sektoroch alebo 4 GB v 64 KB klastroch 2 GB 255 bajtov s LFN
FAT32 8 TB v 2 kB sektoroch 4 GB (2^32 – 1 bajt) 255 bajtov s LFN až 32 podadresárov s CDS 65460 10 ms (vytvorenie) / 2 s (zmena) Nie Nie Nie Nie Nie Nie Nie
exFAT ≈ 128 PB (2^32-1 zhluky 2^25-1 bajtov) teoreticky / 512 TB kvôli limitom tretích strán 16 EB (2^64 – 1 bajt) 2796202 v katalógu 10 ms ACL Nie Nie Nie Nie Nie Nie
NTFS 256 TB v klastroch s veľkosťou 64 kB alebo 16 TB v klastroch s veľkosťou 4 kB 16 TB (Win 7) / 256 TB (Win 8) 255 znakov Unicode (UTF-16) 32760 znakov Unicode, ale nie viac ako 255 znakov v každom prvku 2^32-1 100 ns ACL Áno Áno Áno Áno Áno Áno
HFS+ 8 EB (2^63 bajtov) 8 EB 255 znakov Unicode (UTF-16) nie je obmedzená samostatne 2^32-1 1 s Unix ACL Áno Áno Nie Áno Áno Nie
APFS 8 EB (2^63 bajtov) 8 EB 255 znakov Unicode (UTF-16) nie je obmedzená samostatne 2^63 1 ns Unix ACL Áno Áno Áno Áno Áno Áno
Ext3 32 TB (teoreticky) / 16 TB v 4 KB klastroch (kvôli obmedzeniam obslužných programov programov e2fs) 2 TB (teoreticky) / 16 GB pre staršie programy 255 znakov Unicode (UTF-16) nie je obmedzená samostatne 1 s Unix ACL Áno Áno Nie Nie Nie Nie
Ext4 1 EB (teoreticky) / 16 TB v 4 KB klastroch (kvôli obmedzeniam obslužných programov programov e2fs) 16 TB 255 znakov Unicode (UTF-16) nie je obmedzená samostatne 4 miliardy 1 ns POSIX Áno Áno Nie Nie Áno Nie
F2FS 16 TB 3,94 TB 255 bajtov nie je obmedzená samostatne 1 ns POSIX, ACL Áno Áno Nie Nie Áno Nie
BTRFS 16 EB (2^64 – 1 bajt) 16 EB 255 znakov ASCII 2^17 bajtov 1 ns POSIX, ACL Áno Áno Áno Áno Áno Áno

generál. V teórii informatiky sú definované tieto tri hlavné typy dátových štruktúr – lineárne, tabuľkové, hierarchické. Príklad knihy: postupnosť listov - lineárna štruktúra. Časti, oddiely, kapitoly, odseky - hierarchia. Obsah - tabuľka - spája - hierarchické s lineárnym. Štruktúrované dáta majú nový atribút - Adresa. Takže:

      Lineárne štruktúry (zoznamy, vektory). Pravidelné zoznamy. Adresa každého prvku je jednoznačne určená jeho číslom. Ak sú všetky prvky zoznamu rovnako dlhé, dátové vektory.

      Tabuľkové štruktúry (tabuľky, matice). Rozdiel medzi tabuľkou a zoznamom - každý prvok - je určený adresou, ktorá sa skladá nie z jedného, ​​ale z niekoľkých parametrov. Najbežnejším príkladom je matica - adresa - dva parametre - číslo riadku a číslo stĺpca. Viacrozmerné tabuľky.

      Hierarchické štruktúry. Používa sa na reprezentáciu nepravidelných údajov. Adresa - určená podľa trasy - z vrcholu stromu. Súborovým systémom je počítač. (Trasa môže prekročiť - hodnota údajov, dichotómia - vždy dve vidličky - ľavá a pravá).

Usporiadanie dátových štruktúr. Hlavným spôsobom je triedenie. ! Pri pridávaní nového prvku do objednanej štruktúry je možné zmeniť adresu existujúcich. Pre hierarchické štruktúry – indexovanie – má každý prvok jedinečné číslo – ktoré sa ďalej využíva pri triedení a vyhľadávaní.

    Základné prvky súborového systému

Historicky prvým krokom v oblasti ukladania a správy dát bolo využitie systémov na správu súborov.

Súbor je pomenovaná oblasť externej pamäte, do ktorej možno zapisovať a čítať z nej. Tri možnosti:

    sekvencia ľubovoľného počtu bajtov,

    jedinečné vlastné meno (v skutočnosti adresa).

    dáta rovnakého typu – typ súboru.

Pravidlá pre pomenovanie súborov, spôsob prístupu k údajom uloženým v súbore a štruktúra týchto údajov závisí od konkrétneho systému správy súborov a prípadne od typu súboru.

Prvý, v modernom zmysle, vyvinutý súborový systém vyvinula IBM pre svoju sériu 360 (1965-1966). Ale v súčasných systémoch sa prakticky nepoužíva. Použité dátové štruktúry zoznamu (EC-zväzok, sekcia, súbor).

Väčšina z vás pozná súborové systémy moderných operačných systémov. Ide predovšetkým o MS DOS, Windows a niektoré s vybudovaním súborového systému pre rôzne varianty UNIX.

Štruktúra súboru. Súbor je súbor dátových blokov umiestnených na externom médiu. Ak chcete vykonať výmenu s magnetickým diskom na úrovni hardvéru, musíte zadať číslo valca, číslo povrchu, číslo bloku na zodpovedajúcej stope a počet bajtov, ktoré sa majú zapísať alebo prečítať od začiatku tohto bloku. Preto je vo všetkých súborových systémoch explicitne alebo implicitne alokovaná nejaká základná úroveň, ktorá zabezpečuje prácu so súbormi, ktoré predstavujú množinu priamo adresovateľných blokov v adresnom priestore.

Pomenovanie súborov. Všetky moderné súborové systémy podporujú viacúrovňové pomenovanie súborov udržiavaním ďalších súborov v externej pamäti so špeciálnou adresárovou štruktúrou. Každý adresár obsahuje názvy adresárov a/alebo súborov obsiahnutých v tomto adresári. Plne kvalifikovaný názov súboru teda pozostáva zo zoznamu názvov adresárov plus názvu súboru v adresári, ktorý súbor bezprostredne obsahuje. Rozdiel medzi spôsobom, akým sú súbory pomenované v rôznych súborových systémoch, je v tom, kde začína reťazec pomenovania. (Unix, DOS-Windows)

Ochrana súborov. Systémy správy súborov musia poskytovať autorizáciu na prístup k súborom. Vo všeobecnosti je prístup taký, že vo vzťahu ku každému registrovanému používateľovi daného počítačového systému sú pre každý existujúci súbor označené akcie, ktoré sú pre tohto používateľa povolené alebo zakázané. Boli pokusy implementovať tento prístup ako celok. To však spôsobilo príliš veľa réžie pri ukladaní nadbytočných informácií a pri používaní týchto informácií na kontrolu oprávnenosti prístupu. Preto väčšina moderných systémov správy súborov používa prístup k ochrane súborov, ktorý propagoval UNIX (1974). V tomto systéme má každý registrovaný užívateľ dvojicu celočíselných identifikátorov: identifikátor skupiny, do ktorej tento užívateľ patrí, a svoj vlastný identifikátor v skupine. V súlade s tým je pre každý súbor uložený úplný identifikátor používateľa, ktorý tento súbor vytvoril, a uvádza sa, aké akcie môže so súborom vykonať, aké akcie so súborom sú dostupné pre ostatných používateľov tej istej skupiny a ktorí používatelia iných skupín môže robiť so súborom. Tieto informácie sú veľmi kompaktné, na overenie je potrebných len niekoľko krokov a tento spôsob kontroly prístupu je vo väčšine prípadov uspokojivý.

Režim prístupu pre viacerých používateľov. Ak operačný systém podporuje režim viacerých používateľov, je celkom možné, že sa dvaja alebo viacerí používatelia pokúsia súčasne pracovať s rovnakým súborom. Ak budú všetci títo používatelia súbor iba čítať, nič zlé sa nestane. Ak ale aspoň jeden z nich zmení súbor, na správne fungovanie tejto skupiny je potrebná vzájomná synchronizácia. Historicky mali súborové systémy nasledujúci prístup. V operácii otvárania súboru (prvá a povinná operácia, s ktorou by sa mala začať relácia práce so súborom), bol okrem iných parametrov uvedený aj režim prevádzky (čítanie alebo zmena). + existujú špeciálne postupy na synchronizáciu akcií používateľa. Nedá sa zaznamenať!

    Žurnálovanie v súborových systémoch. Všeobecné zásady.

Spustenie kontroly systému (fsck) na veľkých súborových systémoch môže trvať dlho, čo je veľmi zlé vzhľadom na dnešné vysokorýchlostné systémy. Dôvodom nedostatočnej integrity v súborovom systéme môže byť nesprávne odpojenie, napríklad v čase ukončenia práce sa na disk zapisovalo. Aplikácie by mohli aktualizovať údaje obsiahnuté v súboroch a systém mohol aktualizovať metadáta súborového systému, čo sú „údaje o údajoch súborového systému“, inými slovami, informácie o tom, ktoré bloky sú priradené ku ktorým súborom, ktoré súbory sa nachádzajú v ktorých adresároch. , a podobne.. Chyby (nedostatok integrity) v dátových súboroch sú zlé, ale oveľa horšie ako chyby v metadátach súborového systému, čo môže viesť k strate súboru a iným vážnym problémom.

Aby sa minimalizovali problémy s integritou a minimalizoval sa čas reštartu systému, žurnálovací súborový systém uchováva zoznam zmien, ktoré vykoná v súborovom systéme, predtým, než tieto zmeny skutočne zapíše. Tieto záznamy sú uložené v samostatnej časti súborového systému nazývanej „žurnál“ alebo „záznam“. Keď sú tieto položky žurnálu (protokolu) bezpečne zapísané, žurnálovaný súborový systém vykoná tieto zmeny v systéme súborov a potom tieto položky odstráni z "protokolu" (protokolu). Záznamy protokolu sú usporiadané do skupín súvisiacich zmien systému súborov, podobne ako sú zmeny pridané do databázy usporiadané do transakcií.

Žurnálovaný súborový systém zvyšuje pravdepodobnosť integrity, pretože zápisy do protokolových súborov sa vykonajú pred vykonaním zmien v súborovom systéme a pretože súborový systém uchováva tieto zápisy, kým sa úplne a bezpečne neaplikujú na súborový systém. Pri reštartovaní počítača, ktorý používa žurnálovaný súborový systém, môže mounter zabezpečiť integritu súborového systému jednoduchým skontrolovaním očakávaných, ale nevykonaných zmien v protokolovom súbore a ich zápisom do súborového systému. Vo väčšine prípadov systém nemusí kontrolovať integritu súborového systému, čo znamená, že počítač používajúci žurnálovaný súborový systém bude k dispozícii na prácu takmer okamžite po reštarte. V súlade s tým sa výrazne zníži pravdepodobnosť straty údajov v dôsledku problémov v systéme súborov.

Klasickou formou žurnálovaného súborového systému je ukladanie zmien metadát súborového systému do žurnálu (logu) a ukladanie zmien všetkých údajov súborového systému vrátane zmien v samotných súboroch.

    Súborový systém MS-DOS (FAT)

Súborový systém MS-DOS je stromový súborový systém pre malé disky a jednoduché adresárové štruktúry s koreňovým adresárom v koreňovom adresári a so súbormi a inými adresármi, prípadne prázdnymi, ako listy. Umiestňovanie súborov pod kontrolou tohto súborového systému sa vyskytuje v klastroch, ktorých veľkosť sa môže meniť od 4 KB do 64 KB násobkom 4, bez použitia vlastnosti susedstva zmiešaným spôsobom na pridelenie diskovej pamäte. Na obrázku sú napríklad tri súbory. Súbor1.txt je pomerne veľký: používa tri po sebe idúce bloky. Malý súbor File3.txt využíva iba priestor jedného hosťovaného bloku. Tretí súbor je File2.txt. je veľký fragmentovaný súbor. V každom prípade vstupný bod ukazuje na prvý prideliteľný blok, ktorý patrí do súboru. Ak súbor používa viacero alokovateľných blokov, predchádzajúci blok ukazuje na nasledujúci v reťazci. Hodnota FFF je identifikovaná koncom sekvencie.

FAT oblasť disku

Pre efektívny prístup k súborom použite tabuľka prideľovania súborov– File Allocation Table, ktorá sa nachádza na začiatku oddielu (alebo logickej jednotky). Názov tohto súborového systému, FAT, pochádza z názvu alokačnej tabuľky. Na ochranu oddielu sú na ňom uložené dve kópie FAT pre prípad, že by sa jedna z nich poškodila. Okrem toho musia byť tabuľky prideľovania súborov umiestnené na presne pevných adresách, aby boli súbory potrebné na spustenie systému umiestnené správne.

Alokačná tabuľka súborov pozostáva zo 16-bitových položiek a obsahuje nasledujúce informácie o každom klastri logických diskov:

    klaster sa nepoužíva;

    klaster používa súbor;

    zlý klaster;

    posledný súbor súborov; .

Keďže každý klaster musí mať priradené jedinečné 16-bitové číslo, FAT podporuje maximálne 216 alebo 65 536 klastrov na jednom logickom disku (a dokonca si niektoré z klastrov vyhradzuje pre svoje vlastné potreby). Takto získame maximálnu veľkosť disku obsluhovaného MS-DOSom na 4 GB. Veľkosť klastra možno zväčšiť alebo zmenšiť v závislosti od veľkosti disku. Keď však veľkosť disku prekročí určitú hodnotu, klastre sa príliš zväčšia, čo vedie k vnútornej defragmentácii disku. Okrem informácií o súboroch je možné do tabuľky prideľovania súborov umiestniť aj informácie o adresároch. Toto považuje adresáre za špeciálne súbory s 32-bajtovými položkami pre každý súbor obsiahnutý v tomto adresári. Koreňový adresár má pevnú veľkosť 512 záznamov pre pevný disk, zatiaľ čo pre diskety je táto veľkosť určená veľkosťou diskety. Koreňový adresár sa tiež nachádza hneď po druhej kópii FAT, pretože obsahuje súbory potrebné pre zavádzač systému MS-DOS.

Pri hľadaní súboru na disku musí MS-DOS hľadať v adresárovej štruktúre, aby ho našiel. Napríklad, ak chcete spustiť spustiteľný súbor, C:\Program\NC4\nc.exe nájde spustiteľný súbor vykonaním nasledujúceho:

    prečíta koreňový adresár jednotky C: a hľadá v ňom adresár Program;

    prečíta počiatočný klaster programov a hľadá v tomto adresári položku o podadresári NC4;

    prečíta počiatočný klaster podadresára NC4 a hľadá v ňom položku pre súbor nc.exe;

    prečíta všetky klastre súboru nc.exe.

Táto metóda vyhľadávania nie je najrýchlejšia spomedzi existujúcich súborových systémov. Navyše, čím väčšia je hĺbka adresárov, tým pomalšie bude vyhľadávanie. Ak chcete urýchliť operáciu vyhľadávania, mali by ste dodržiavať vyváženú štruktúru súborov.

Výhody FAT

    Je to najlepšia voľba pre malé logické disky, pretože začína s minimálnou réžiou. Na diskoch menších ako 500 MB pracuje s prijateľným výkonom.

Nevýhody FAT

    Keďže veľkosť záznamu súboru je obmedzená na 32 bajtov a informácie musia zahŕňať veľkosť súboru, dátum, atribúty atď., veľkosť názvu súboru je tiež obmedzená a nemôže presiahnuť 8+3 znaky na súbor. Použitie takzvaných krátkych názvov súborov robí FAT menej atraktívnym na použitie ako iné súborové systémy.

    Používanie FAT na diskoch väčších ako 500 MB nie je racionálne kvôli defragmentácii disku.

    Súborový systém FAT nemá žiadne prostriedky ochrany a zachováva minimálne funkcie zabezpečenia informácií.

    Rýchlosť vykonávania operácií vo FAT je nepriamo úmerná hĺbke vnorenia adresárov a veľkosti disku.

    UNIX súborový systém - systémy (ext3)

Moderný, výkonný a bezplatný operačný systém Linux poskytuje širokú oblasť pre vývoj moderných systémov a softvéru na mieru. Niektoré z najzaujímavejších objavov v nedávnych jadrách Linuxu sú nové, vysokovýkonné technológie na správu ukladania, prideľovania a aktualizácie údajov na disku. Jedným z najzaujímavejších mechanizmov je súborový systém ext3, ktorý je integrovaný do linuxového jadra od verzie 2.4.16 a je už štandardne dostupný v linuxových distribúciách od Red Hat a SuSE.

Súborový systém ext3 je žurnálovací súborový systém, ktorý je 100% kompatibilný so všetkými pomôckami vytvorenými na vytváranie, správu a ladenie súborového systému ext2, ktorý sa v posledných rokoch používa na systémoch Linux. Pred podrobným popisom rozdielov medzi súborovými systémami ext2 a ext3 si objasnime terminológiu súborových systémov a ukladania súborov.

Na systémovej úrovni existujú všetky údaje v počítači ako bloky údajov na nejakom úložnom zariadení, organizované pomocou špeciálnych dátových štruktúr do sekcií (logických množín na úložnom zariadení), ktoré sú zase organizované do súborov, adresárov a nepoužívané (voľné). ) priestor.

Súborové systémy sa vytvárajú na diskových oddieloch, aby sa zjednodušilo ukladanie a organizovanie údajov vo forme súborov a adresárov. Linux, podobne ako systém Unix, používa hierarchický súborový systém tvorený súbormi a adresármi, ktoré obsahujú buď súbory alebo adresáre. Súbory a adresáre v súborovom systéme Linux sú používateľovi sprístupnené ich pripojením (príkaz „mount“), čo je zvyčajne súčasťou procesu zavádzania systému. Zoznam súborových systémov dostupných na použitie je uložený v súbore /etc/fstab (FileSystem TABle). Zoznam súborových systémov, ktoré nie sú momentálne pripojené systémom, je uložený v súbore /etc/mtab (Mount TABle).

Keď je súborový systém pripojený počas zavádzania, bit v hlavičke („čistý bit“ / „čistý bit“) sa vymaže, čo znamená, že súborový systém sa používa a že dátové štruktúry používané na riadenie umiestnenia a organizáciu súborov a adresárov, v tomto súborovom systéme je možné meniť.

Súborový systém sa považuje za nedotknutý, ak sa všetky dátové bloky v ňom používajú alebo sú voľné; každý alokovaný dátový blok je obsadený iba jedným súborom alebo adresárom; všetky súbory a adresáre sú prístupné po spracovaní série iných adresárov v súborovom systéme. Keď je systém Linux úmyselne ukončený pomocou príkazov operátora, všetky súborové systémy sú odpojené. Odpojenie súborového systému počas vypínania nastaví v hlavičke súborového systému jasný bit, čo naznačuje, že súborový systém bol správne odpojený, a preto ho možno považovať za nedotknutý.

Roky ladenia a prepracovania súborového systému a používania vylepšených algoritmov na zapisovanie údajov na disk výrazne znížili poškodenie údajov spôsobené aplikáciami alebo samotným jadrom Linuxu, ale oprava poškodenia a straty údajov v dôsledku výpadkov napájania a iných systémových problémov je stále problémom. náročná úloha. V prípade núdzového vypnutia alebo jednoduchého vypnutia linuxového systému bez použitia štandardných vypínacích procedúr sa „clear bit“ v hlavičke súborového systému nenastaví. Pri ďalšom spustení systému proces pripojenia zistí, že systém nie je označený ako „čistý“ a fyzicky skontroluje jeho integritu pomocou pomôcky na kontrolu súborového systému Linux/Unix „fsck“ (File System Check).

Pre Linux je k dispozícii niekoľko žurnálovaných súborových systémov. Najznámejšie z nich sú: XFS, žurnálovací súborový systém vyvinutý spoločnosťou Silicon Graphics, ale teraz vydaný ako open source (open source); RaiserFS, žurnálovací súborový systém navrhnutý špeciálne pre Linux; JFS, žurnálovací súborový systém pôvodne vyvinutý spoločnosťou IBM, ale teraz vydaný ako open source; ext3 je súborový systém vyvinutý Dr. Stephanom Tweediem v Red Hat a niekoľko ďalších systémov.

Súborový systém ext3 je žurnálovaná verzia systému súborov ext2 pre Linux. Súborový systém ext3 má oproti iným súborovým systémom žurnálovania jednu významnú výhodu – je plne kompatibilný so súborovým systémom ext2. To umožňuje použiť všetky existujúce aplikácie určené na manipuláciu a konfiguráciu súborového systému ext2.

Súborový systém ext3 je podporovaný linuxovými jadrami verzie 2.4.16 a novšími a musí byť povolený pomocou dialógového okna Filesystems Configuration pri zostavovaní jadra. Linuxové distribúcie ako Red Hat 7.2 a SuSE 7.3 už obsahujú natívnu podporu pre súborový systém ext3. Súborový systém ext3 môžete použiť iba vtedy, ak je vo vašom jadre zabudovaná podpora ext3 a máte najnovšie verzie pomôcok mount a e2fsprogs.

Vo väčšine prípadov si konvertovanie súborových systémov z jedného formátu do druhého vyžaduje zálohovanie všetkých obsiahnutých údajov, preformátovanie oddielov alebo logických zväzkov obsahujúcich súborový systém a následné obnovenie všetkých údajov do tohto súborového systému. Kvôli kompatibilite súborových systémov ext2 a ext3 je možné všetky tieto kroky vynechať a preklad je možné vykonať jediným príkazom (spustiť ako root):

# /sbin/tune2fs -j<имя-раздела >

Napríklad konverziu súborového systému ext2 umiestneného na oddiele /dev/hda5 na súborový systém ext3 je možné vykonať pomocou nasledujúceho príkazu:

# /sbin/tune2fs -j /dev/hda5

Voľba "-j" príkazu "tune2fs" vytvorí žurnál ext3 na existujúcom súborovom systéme ext2. Po konverzii súborového systému ext2 na ext3 musíte zmeniť aj položky /etc/fstab, aby ste označili, že oddiel je teraz súborovým systémom "ext3". Môžete tiež použiť automatickú detekciu typu oddielu (možnosť „auto“), ale stále sa odporúča explicitne špecifikovať typ systému súborov. Nasledujúci príklad súboru /etc/fstab ukazuje zmeny pred a po prechode súborového systému pre oblasť /dev/hda5:

/dev/hda5 /opt ext2 predvolene 1 2

/dev/hda5 /opt ext3 predvolene 1 0

Posledné pole v /etc/fstab určuje fázu zavádzania, počas ktorej by sa mala skontrolovať integrita súborového systému pomocou pomôcky "fsck". Keď používate súborový systém ext3, môžete túto hodnotu nastaviť na "0", ako je uvedené v predchádzajúcom príklade. To znamená, že program "fsck" nikdy neskontroluje integritu súborového systému, pretože integrita súborového systému je zaručená vrátením žurnálu.

Konverzia koreňového súborového systému na ext3 vyžaduje špeciálny prístup a najlepšie sa vykoná v režime jedného používateľa po vytvorení RAM disku, ktorý podporuje súborový systém ext3.

Okrem toho, že je kompatibilný s obslužnými programami súborového systému ext2 a jednoducho konvertuje súborový systém z ext2 na ext3, súborový systém ext3 ponúka aj niekoľko rôznych typov žurnálovania.

Súborový systém ext3 podporuje tri rôzne režimy žurnálovania, ktoré možno povoliť zo súboru /etc/fstab. Tieto režimy protokolovania sú nasledovné:

    Žurnál / žurnál - záznam všetkých zmien údajov a metaúdajov súborového systému. Najpomalší zo všetkých troch režimov protokolovania. Tento režim minimalizuje možnosť straty zmien súborov, ktoré vykonáte v systéme súborov.

    Sekvenčné/usporiadané – zapisuje iba zmeny metadát súborového systému, ale zapisuje aktualizácie údajov súborov na disk pred zmenami súvisiacich metadát súborového systému. Tento režim žurnálovania ext3 je štandardne nastavený.

    Spätný zápis – zapisujú sa iba zmeny metadát súborového systému na základe štandardného procesu zápisu zmien do údajov súboru. Toto je najrýchlejší spôsob protokolovania.

Rozdiely medzi týmito režimami protokolovania sú jemné a hlboké. Použitie režimu "žurnál" vyžaduje, aby súborový systém ext3 zapísal každú zmenu do súborového systému dvakrát - raz do žurnálu a potom do samotného súborového systému. To môže spomaliť celkový výkon vášho súborového systému, ale tento režim je medzi používateľmi najobľúbenejší, pretože minimalizuje možnosť straty zmien údajov vo vašich súboroch, pretože zmeny metadát aj zmeny údajových súborov sa zapisujú do žurnálu ext3 a môžu byť zopakovať pri reštarte systému.

Pomocou „sekvenčného“ režimu sa zapisujú iba zmeny metadát súborového systému, čo znižuje redundanciu medzi zápisom do súborového systému a do žurnálu, a preto je metóda rýchlejšia. Aj keď sa zmeny údajov súboru nezapisujú do žurnálu, musia sa vykonať pred zmenami súvisiacich metadát súborového systému, ktoré vykoná démon žurnálovania ext3, čo môže trochu spomaliť výkon vášho systému. Použitie tejto metódy protokolovania zaisťuje, že súbory v súborovom systéme nebudú nikdy synchronizované s ich priradenými metadátami súborového systému.

Metóda spätného zápisu je rýchlejšia ako ostatné dve metódy žurnálovania, pretože ukladá iba zmeny metadát súborového systému a pri zápise sa nečaká, kým sa priradené údaje k súboru zmenia (pred aktualizáciou vecí, ako je veľkosť súboru a informácie o adresári). Keďže aktualizácie údajov súborov sú asynchrónne so zmenami metadát v systéme súborov zaznamenaných v systéme, súbory v systéme súborov môžu vykazovať chyby v metadátach, ako je chyba pri špecifikovaní vlastníka blokov údajov (ktorých aktualizácia nebola dokončená v čase reštartovania systému ). Nie je to smrteľné, ale môže prekážať používateľovi.

Režim žurnálovania používaný na súborovom systéme ext3 je špecifikovaný v súbore /etc/fstab pre daný súborový systém. "Sériový" režim je predvolený, ale môžete určiť rôzne režimy protokolovania zmenou možností pre požadovanú sekciu v súbore /etc/fstab. Napríklad záznam v /etc/fstab označujúci použitie režimu protokolovania "spätný zápis" by vyzeral takto:

/dev/hda5 /opt ext3 data=writeback 1 0

    Windows NT Family File System (NTFS)

      Fyzická štruktúra NTFS

Začnime všeobecnými faktami. Oblasť NTFS môže mať teoreticky takmer akúkoľvek veľkosť. Samozrejme, že existuje hranica, ale nebudem ju ani naznačovať, keďže s rezervou si vystačí na ďalších sto rokov vývoja výpočtovej techniky - pri akomkoľvek tempe rastu. Ako to funguje v praxi? Skoro to isté. Maximálna veľkosť oddielu NTFS je v súčasnosti obmedzená iba veľkosťou pevných diskov. NT4 však bude mať problémy pri pokuse o inštaláciu na partíciu, ak je ktorákoľvek jeho časť vzdialená viac ako 8 GB od fyzického začiatku disku, ale tento problém sa týka len bootovacej partície.

Lyrická odbočka. Spôsob inštalácie NT4.0 na prázdny disk je celkom originálny a môže viesť k nedorozumeniam o možnostiach NTFS. Ak inštalátorovi poviete, že chcete disk naformátovať na NTFS, maximálna veľkosť, ktorú vám ponúkne, sú len 4 GB. Prečo taký malý, keď veľkosť oddielu NTFS je v skutočnosti prakticky neobmedzená? Faktom je, že inštalačná sekcia tento súborový systém jednoducho nepozná :) Inštalátor naformátuje tento disk na obyčajný FAT, ktorého maximálna veľkosť v NT je 4 GB (pri použití nie celkom štandardného obrovského 64 KB klastra) a nainštaluje NT na tento FAT. Ale už v procese prvého zavádzania samotného operačného systému (stále vo fáze inštalácie) sa oddiel rýchlo prevedie na NTFS; takže používateľ si nič nevšimne, okrem zvláštneho "limitu" veľkosti NTFS pri inštalácii. :)

      Štruktúra sekcie - celkový pohľad

Ako každý iný systém, aj NTFS rozdeľuje všetok užitočný priestor do klastrov – dátových blokov používaných naraz. NTFS podporuje takmer akúkoľvek veľkosť klastra – od 512 bajtov do 64 KB, pričom za istý štandard sa považuje klaster s veľkosťou 4 KB. NTFS nemá žiadne anomálie v štruktúre klastrov, takže k tejto, vo všeobecnosti dosť banálnej téme, nie je veľa čo povedať.

Disk NTFS je podmienene rozdelený na dve časti. Prvých 12 % disku je alokovaných pre takzvanú zónu MFT – priestor, do ktorého narastá metasúbor MFT (viac o tom nižšie). Do tejto oblasti nie je možné zapisovať žiadne údaje. Zóna MFT je vždy prázdna – robí sa to preto, aby sa najdôležitejší servisný súbor (MFT) pri svojom raste nefragmentoval. Zvyšných 88 % disku je len bežný priestor na ukladanie súborov.

Voľné miesto na disku však zahŕňa všetok fyzicky voľný priestor – sú tam zahrnuté aj nevyplnené časti MFT zóny. Mechanizmus využitia MFT zóny je nasledovný: keď už nie je možné zapisovať súbory do bežného priestoru, MFT zóna sa jednoducho zmenší (v súčasných verziách operačných systémov presne dvakrát), čím sa uvoľní priestor pre zápis súborov. Pri uvoľnení miesta v bežnej oblasti MFT sa oblasť môže znova rozšíriť. Zároveň nie je vylúčená situácia, keď v tejto zóne zostanú aj bežné súbory: tu nie je žiadna anomália. No systém sa to snažil nechať voľnú, no nefungovalo to. Život ide ďalej... Metasúbor MFT sa môže stále fragmentovať, hoci by to bolo nežiaduce.

      MFT a jeho štruktúra

Súborový systém NTFS je vynikajúcim úspechom v štruktúrovaní: každý prvok systému je súbor – dokonca aj servisné informácie. Najdôležitejší súbor na NTFS sa nazýva MFT alebo Master File Table - všeobecná tabuľka súborov. Práve on sa nachádza v zóne MFT a je centralizovaným adresárom všetkých ostatných súborov na disku a paradoxne aj sám seba. MFT je rozdelený na záznamy pevnej veľkosti (zvyčajne 1 KB) a každý záznam zodpovedá súboru (vo všeobecnom zmysle slova). Prvých 16 súborov je servisného charakteru a sú neprístupné pre operačný systém – nazývajú sa metasúbory a úplne prvým metasúborom je samotný MFT. Týchto prvých 16 prvkov MFT je jedinou časťou disku, ktorá má pevnú polohu. Je zaujímavé, že druhá kópia prvých troch záznamov je kvôli spoľahlivosti (sú veľmi dôležité) uložená presne v strede disku. Zvyšok súboru MFT môže byť umiestnený, ako každý iný súbor, na ľubovoľných miestach na disku - jeho polohu môžete obnoviť pomocou seba, "hákovaním" na samom základe - na prvom prvku MFT.

        Metasúbory

Prvých 16 súborov NTFS (metasúborov) má charakter služby. Každý z nich je zodpovedný za nejaký aspekt systému. Výhoda takéhoto modulárneho prístupu spočíva v úžasnej flexibilite – napríklad na FAT je fyzické poškodenie v samotnej FAT oblasti fatálne pre fungovanie celého disku a NTFS môže posunúť, dokonca fragmentovať cez disk, všetky svoje služby. plochy, obchádzajúc prípadné povrchové poruchy – okrem prvých 16 prvkov MFT.

Metasúbory sa nachádzajú v koreňovom adresári disku NTFS – začínajú znakom „$“, hoci pomocou štandardných nástrojov je ťažké o nich získať akékoľvek informácie. Zaujímavosťou je, že tieto súbory majú aj veľmi reálnu veľkosť – napríklad, koľko operačný systém minie na katalogizáciu celého disku, zistíte podľa veľkosti súboru $MFT. Nasledujúca tabuľka uvádza aktuálne používané metasúbory a ich účel.

kópiu prvých 16 záznamov MFT umiestnenú v strede disku

protokolovanie súboru podpory (pozri nižšie)

servisné informácie - štítok zväzku, verzia systému súborov atď.

zoznam štandardných atribútov súborov na zväzku

koreňový adresár

objemová mapa voľného priestoru

boot sektor (ak je oddiel bootovateľný)

súbor, ktorý zaznamenáva práva používateľa na využitie miesta na disku (začal fungovať iba v NT5)

súbor - tabuľka zhody medzi veľkými a malými písmenami v názvoch súborov na aktuálnom zväzku. Je to potrebné hlavne preto, že v NTFS sú názvy súborov písané v Unicode, čo je 65 tisíc rôznych znakov, je veľmi netriviálne hľadať veľké a malé ekvivalenty.

        Súbory a streamy

Takže systém má súbory - a nič iné ako súbory. Čo tento koncept zahŕňa na NTFS?

    V prvom rade je povinným prvkom záznam v MFT, pretože, ako už bolo spomenuté, všetky súbory na disku sú uvedené v MFT. Na tomto mieste sú uložené všetky informácie o súbore okrem skutočných údajov. Názov súboru, veľkosť, umiestnenie jednotlivých fragmentov na disku atď. Ak pre informáciu chýba jeden záznam MFT, použije sa ich niekoľko a nie nevyhnutne v rade.

    Voliteľný prvok - dátové toky súborov. Definícia „voliteľného“ sa môže zdať divná, ale napriek tomu tu nie je nič zvláštne. Po prvé, súbor nemusí mať dáta - v tomto prípade nezaberá voľné miesto na samotnom disku. Po druhé, súbor nemusí byť príliš veľký. Potom prichádza na rad pomerne úspešné riešenie: dáta súboru sa uložia priamo do MFT, na miesto zostávajúce z hlavných dát v rámci jedného MFT záznamu. Súbory, ktoré zaberajú stovky bajtov, zvyčajne nemajú svoje „fyzické“ stvárnenie v oblasti hlavného súboru – všetky dáta takéhoto súboru sú uložené na jednom mieste – v MFT.

Situácia s údajmi súboru je celkom zaujímavá. Každý súbor na NTFS má vo všeobecnosti trochu abstraktnú štruktúru - nemá údaje ako také, ale existujú prúdy. Jeden z prúdov má pre nás zaužívaný význam – dáta súboru. Ale väčšina atribútov súborov sú tiež prúdy! Ukazuje sa teda, že súbor má iba jednu základnú entitu - číslo v MFT a všetko ostatné je voliteľné. Touto abstrakciou sa dajú vytvárať celkom pohodlné veci – napríklad môžete k súboru „prilepiť“ ďalší stream tak, že doň zapíšete ľubovoľné údaje – napríklad informácie o autorovi a obsahu súboru, ako sa to robí vo Windows 2000 (karta úplne vpravo vo vlastnostiach súboru, zobrazená z prieskumníka). Je zaujímavé, že tieto dodatočné toky nie sú viditeľné štandardnými prostriedkami: pozorovaná veľkosť súboru je len veľkosť hlavného toku, ktorý obsahuje tradičné údaje. Je možné mať napríklad súbor s nulovou dĺžkou, po odstránení ktorého sa uvoľní 1 GB voľného miesta – jednoducho preto, že nejaký prefíkaný program alebo technológia doň prilepil ďalší stream (alternatívne dáta) o veľkosti gigabajtu. . V skutočnosti sa však v súčasnosti prúdy prakticky nepoužívajú, takže by ste sa takýchto situácií nemali báť, hoci sú hypoteticky možné. Len majte na pamäti, že súbor na NTFS je hlbší a globálnejší koncept, ako si len prezeranie adresárov na disku dokážete predstaviť. A nakoniec: názov súboru môže obsahovať ľubovoľné znaky, vrátane celej sady národných abecied, pretože údaje sú prezentované v Unicode - 16-bitovej reprezentácii, ktorá dáva 65535 rôznych znakov. Maximálna dĺžka názvu súboru je 255 znakov.

      Katalógy

Adresár na NTFS je špecifický súbor, ktorý ukladá odkazy na iné súbory a adresáre, čím vytvára hierarchickú štruktúru údajov na disku. Katalógový súbor je rozdelený do blokov, z ktorých každý obsahuje názov súboru, základné atribúty a odkaz na prvok MFT, ktorý už poskytuje úplné informácie o prvku katalógu. Vnútorná adresárová štruktúra je binárny strom. Čo to znamená: ak chcete nájsť súbor s daným názvom v lineárnom adresári, ako je napríklad FAT, operačný systém musí prehliadnuť všetky položky v adresári, kým nenájde ten správny. Na druhej strane binárny strom usporiada názvy súborov takým spôsobom, že vyhľadávanie súborov prebieha rýchlejšie – získaním dvojhodnotových odpovedí na otázky o umiestnení súboru. Otázka, na ktorú môže binárny strom odpovedať, je: v ktorej skupine, vzhľadom na daný prvok, je meno, ktoré hľadáte - nad alebo pod? Takouto otázkou začíname na stredný prvok a každá odpoveď zužuje oblasť vyhľadávania v priemere dvakrát. Súbory sú, povedzme, jednoducho zoradené podľa abecedy a otázka je zodpovedaná zrejmým spôsobom - porovnaním začiatočných písmen. Oblasť vyhľadávania, zúžená na dva krát, sa začína skúmať podobným spôsobom, pričom sa začína opäť od stredného prvku.

Záverom je, že na nájdenie jedného súboru medzi 1 000, napríklad, FAT bude musieť vykonať v priemere 500 porovnaní (s najväčšou pravdepodobnosťou sa súbor nájde uprostred vyhľadávania) a stromový systém len asi 10 ( 2^10 = 1024). Úspora času pri hľadaní je samozrejmá. Nemali by ste si však myslieť, že v tradičných systémoch (FAT) všetko beží tak: po prvé, udržiavať zoznam súborov vo forme binárneho stromu je dosť pracné a po druhé, dokonca aj FAT pri výkone moderného systému (Windows2000 alebo Windows98) používa podobné optimalizačné vyhľadávanie. Je to len ďalší fakt, ktorý treba pridať do vašej vedomostnej schránky. Chcel by som tiež vyvrátiť bežnú mylnú predstavu (ktorú som sám zdieľal pomerne nedávno), že pridanie súboru do adresára vo forme stromu je ťažšie ako do lineárneho adresára: ide o celkom porovnateľné operácie v čase - faktom je že ak chcete pridať súbor do adresára, musíte sa najprv uistiť, že súbor s týmto názvom tam ešte nie je :) - a tu v lineárnom systéme budeme mať problémy s nájdením súboru opísaného vyššie, čo viac ako kompenzuje pre veľmi jednoduchosť pridania súboru do adresára.

Aké informácie možno získať jednoduchým prečítaním katalógového súboru? Presne to, čo vytvára príkaz dir. Ak chcete vykonať najjednoduchšiu navigáciu na disku, nemusíte liezť do MFT pre každý súbor, stačí si prečítať najvšeobecnejšie informácie o súboroch z adresárových súborov. Hlavný adresár disku – root – sa nelíši od bežných adresárov, až na špeciálny odkaz naň zo začiatku metasúboru MFT.

      Vedenie denníka

NTFS je systém odolný voči chybám, ktorý sa dokáže ľahko vrátiť do správneho stavu v prípade takmer akéhokoľvek skutočného zlyhania. Akýkoľvek moderný súborový systém je založený na takom koncepte, ako je transakcia - akcia, ktorá sa vykonáva úplne a správne alebo sa nevykonáva vôbec. NTFS jednoducho nemá prechodné (chybné alebo nesprávne) stavy - kvantum zmeny údajov nemožno rozdeliť na pred a po zlyhaní, ktoré prináša deštrukciu a zmätok - buď je potvrdené alebo zrušené.

Príklad 1: Údaje sa zapisujú na disk. Zrazu sa ukázalo, že sme nemohli písať na miesto, kde sme sa práve rozhodli zapísať ďalšiu časť dát – fyzické poškodenie povrchu. Správanie NTFS je v tomto prípade celkom logické: transakcia zápisu je vrátená späť v celom rozsahu - systém si uvedomí, že zápis nebol vykonaný. Miesto sa označí ako neúspešné a údaje sa zapíšu na iné miesto – začne sa nová transakcia.

Príklad 2: zložitejší prípad – údaje sa zapisujú na disk. Zrazu buch – napájanie sa vypne a systém sa reštartuje. V akej fáze sa záznam zastavil, kde sú údaje a kde sú nezmysly? Na pomoc prichádza ďalší systémový mechanizmus – transakčný protokol. Ide o to, že systém, ktorý si uvedomil svoju túžbu zapisovať na disk, označil tento stav v metasúbore $LogFile. Pri opätovnom načítaní sa v tomto súbore skúmajú nedokončené transakcie, ktoré boli prerušené haváriou a ktorých výsledok je nepredvídateľný – všetky tieto transakcie sa zrušia: miesto, na ktoré bolo zapísané, sa opäť označí ako voľné, indexy a prvky MFT sa vrátia do stavu v ktorých boli pred zlyhaním a systém ako celok zostáva stabilný. Čo ak sa však pri zápise do denníka vyskytla chyba? Je to tiež v poriadku: transakcia sa buď ešte nezačala (existuje len pokus o zaznamenanie zámerov na jej vykonanie), alebo sa už skončila - to znamená, že sa pokúša zaznamenať, že transakcia už skutočne prebehla. dokončené. V druhom prípade pri ďalšom spustení systém sám úplne príde na to, že v skutočnosti je všetko aj tak napísané správne a nebude venovať pozornosť „nedokončenej“ transakcii.

Pamätajte však, že protokolovanie nie je všeliekom, ale iba prostriedkom na výrazné zníženie počtu chýb a zlyhaní systému. Je nepravdepodobné, že si bežný používateľ NTFS niekedy všimne systémovú chybu alebo bude nútený spustiť chkdsk – skúsenosti ukazujú, že NTFS sa obnoví do úplne správneho stavu aj pri pádoch počas veľmi rušných momentov aktivity disku. Môžete dokonca optimalizovať disk a uprostred tohto procesu stlačiť reset - pravdepodobnosť straty dát bude aj v tomto prípade veľmi nízka. Je však dôležité pochopiť, že systém obnovy NTFS zaručuje správnosť systému súborov, nie vašich údajov. Ak ste zapisovali na disk a došlo k nehode, vaše údaje sa nemusia zapísať. Zázraky sa nedejú.

Súbory NTFS majú jeden pomerne užitočný atribút - "komprimovaný". Faktom je, že NTFS má vstavanú podporu pre kompresiu disku - niečo, na čo ste predtým museli použiť Stacker alebo DoubleSpace. Akýkoľvek súbor alebo adresár jednotlivo môže byť uložený na disku v komprimovanej forme - tento proces je pre aplikácie úplne transparentný. Kompresia súborov má veľmi vysokú rýchlosť a len jednu veľkú negatívnu vlastnosť – obrovskú virtuálnu fragmentáciu komprimovaných súborov, ktorá však nikoho veľmi netrápi. Kompresia sa vykonáva v blokoch po 16 klastroch a využíva takzvané "virtuálne klastre" - opäť mimoriadne flexibilné riešenie, ktoré umožňuje dosiahnuť zaujímavé efekty - napríklad polovicu súboru je možné komprimovať a polovicu nie. Dosahuje sa to vďaka skutočnosti, že ukladanie informácií o kompresii určitých fragmentov je veľmi podobné bežnej fragmentácii súboru: napríklad typický záznam fyzického rozloženia skutočného nekomprimovaného súboru:

súborové klastre 1 až 43 sú uložené v diskových klastroch od 400. súborové klastre 44 až 52 sú uložené v diskových klastroch od 8530...

Fyzické rozloženie typického komprimovaného súboru:

Súborové klastre 1 až 9 sú uložené v diskových klastroch od 400 Súborové klastre 10 až 16 nie sú nikde uložené Súborové klastre 17 až 18 sú uložené v diskových klastroch od 409 Súborové klastre 19 až 36. nie je nikde uložený ....

Je vidieť, že komprimovaný súbor má „virtuálne“ zhluky, v ktorých nie sú žiadne skutočné informácie. Akonáhle systém uvidí takéto virtuálne klastre, okamžite pochopí, že dáta predchádzajúceho bloku, násobok 16, musia byť dekomprimované a výsledné dáta len zaplnia virtuálne klastre - to je v skutočnosti celý algoritmus .

      Bezpečnosť

NTFS obsahuje mnoho prostriedkov na vymedzenie práv objektov – predpokladá sa, že ide o najpokročilejší súborový systém zo všetkých, ktoré v súčasnosti existujú. Teoreticky je to nepochybne pravda, ale v súčasných implementáciách má, žiaľ, systém práv dosť ďaleko od ideálu a predstavuje rigidný, no nie vždy logický súbor charakteristík. Práva pridelené akémukoľvek objektu a jednoznačne rešpektované systémom sa vyvíjajú - zásadné zmeny a doplnky práv boli urobené už niekoľkokrát a pri Windows 2000 sa dostali do celkom rozumnej množiny.

Práva súborového systému NTFS sú neoddeliteľne spojené so samotným systémom - to znamená, že vo všeobecnosti ich iný systém nemusí dodržiavať, ak má fyzický prístup k disku. Aby sa zabránilo fyzickému prístupu, Windows2000 (NT5) stále zaviedol štandardnú funkciu – viac o tom pozri nižšie. Systém práv v súčasnom stave je pomerne zložitý a pochybujem, že by som bežnému čitateľovi mohol povedať niečo zaujímavé a užitočné v každodennom živote. Ak vás táto téma zaujíma, nájdete množstvo kníh o architektúre siete NT, ktoré sa jej venujú podrobnejšie.

Tento popis štruktúry súborového systému je možné dokončiť, zostáva popísať len niekoľko jednoducho praktických alebo originálnych vecí.

Táto vec je v systéme NTFS od nepamäti, ale používala sa veľmi zriedkavo - a predsa: Pevné prepojenie je, keď má ten istý súbor dva názvy (niekoľko súborových adresárov alebo rôznych ukazovateľov adresára ukazuje na rovnakú položku MFT) . Predpokladajme, že ten istý súbor má názvy 1.txt a 2.txt: ak používateľ vymaže súbor 1, zostane súbor 2. Ak vymaže 2, súbor 1 zostane, to znamená, že oba názvy budú od momentu vytvorenia úplne rovnocenné. Súbor sa fyzicky vymaže až po odstránení jeho priezviska.

      Symbolické odkazy (NT5)

Oveľa praktickejšia funkcia, ktorá umožňuje vytvárať virtuálne adresáre – rovnako ako virtuálne disky s príkazom subst v DOSe. Aplikácie sú dosť rôznorodé: po prvé, zjednodušenie adresárového systému. Ak sa vám nepáči adresár Dokumenty a nastavenia\Správca\Dokumenty, môžete ho prepojiť s koreňovým adresárom – systém bude stále hovoriť s adresárom s hustou cestou a vy – s oveľa kratším názvom, úplne ekvivalentným to. Na vytvorenie takýchto odkazov môžete použiť program junction (junction.zip(15 Kb), 36 kb), ktorý napísal známy špecialista Mark Russinovich (http://www.sysinternals.com). Program funguje iba v NT5 (Windows 2000), rovnako ako samotná funkcia. Na odstránenie odkazu môžete použiť štandardný príkaz rd. UPOZORNENIE: Pokus o odpojenie pomocou Prieskumníka alebo iných správcov súborov, ktorí nerozumejú virtuálnej podstate adresára (napr. FAR), vymaže údaje, na ktoré odkaz odkazuje! Buď opatrný.

      Šifrovanie (NT5)

Užitočná funkcia pre ľudí, ktorí sa obávajú o svoje tajomstvá, každý súbor alebo adresár môže byť tiež zašifrovaný, čo znemožňuje čítanie ďalšej inštalácie NT. V kombinácii so štandardným a takmer neprelomiteľným heslom na spustenie samotného systému táto funkcia poskytuje dostatočné zabezpečenie pre väčšinu aplikácií dôležitých údajov, ktoré si vyberiete.

Materiál na recenznú prednášku č.33

pre študentov odboru

"Softvér informačných technológií"

docent Katedry IKT, Ph.D. Livák E.N.

SYSTÉMY SPRÁVY SÚBOROV

Základné pojmy, fakty

Vymenovanie. Vlastnosti súborových systémovtuk,VFAT,FAT32,hpfs,NTFS. Súborové systémy OS UNIX (s5, ufs), OS Linux Ext2FS Systémové oblasti disku (partícia, zväzok). Zásady umiestňovania súborov a uchovávania informácií o umiestnení súborov. Organizácia adresárov. Obmedzenie prístupu k súborom a adresárom.

Zručnosti

Využívanie znalostí o štruktúre súborového systému na ochranu a obnovu počítačových informácií (súborov a adresárov). Organizácia riadenia prístupu k súborom.

súborové systémy. Štruktúra súborového systému

Dáta sú uložené na disku ako súbory. Súbor je pomenovaná časť disku.

Systémy správy súborov sú určené na správu súborov.

Schopnosť narábať s dátami uloženými v súboroch na logickej úrovni poskytuje súborový systém. Je to súborový systém, ktorý určuje, ako sú dáta organizované na pamäťovom médiu.

Touto cestou, systém súborov je súbor špecifikácií a ich pridruženého softvéru, ktoré sú zodpovedné za vytváranie, ničenie, organizovanie, čítanie, zapisovanie, úpravu a presúvanie informácií o súboroch, ako aj za riadenie prístupu k súborom a správu zdrojov používaných súbormi.

Systém správy súborov je hlavným podsystémom vo veľkej väčšine moderných operačných systémov.

Používanie systému správy súborov

· všetky programy spracovania systému sú zapojené podľa údajov;

· sú vyriešené problémy centralizovanej distribúcie diskového priestoru a správy dát;

· používateľovi je poskytnutá možnosť vykonávať operácie so súbormi (vytvárať atď.), vymieňať si údaje medzi súbormi a rôznymi zariadeniami, chrániť súbory pred neoprávneným prístupom.

Niektoré operačné systémy môžu mať viacero systémov správy súborov, čo im umožňuje pracovať s viacerými systémami súborov.

Skúsme rozlišovať medzi súborovým systémom a systémom správy súborov.

Pojem „súborový systém“ definuje princípy prístupu k údajom organizovaným v súboroch.

Termín "systém správy súborov" odkazuje na konkrétnu implementáciu súborového systému, t.j. ide o sadu softvérových modulov, ktoré zabezpečujú prácu so súbormi v konkrétnom OS.

Aby bolo možné pracovať so súbormi organizovanými v súlade s nejakým súborovým systémom, musí byť pre každý OS vyvinutý vhodný systém správy súborov. Tento UV systém bude fungovať iba na OS, pre ktorý bol vytvorený.

Pre rodinu OS Windows sa používajú najmä súborové systémy: VFAT, FAT 32, NTFS.

Zvážte štruktúru týchto súborových systémov.

Na súborovom systéme TUK Diskový priestor ľubovoľnej logickej jednotky je rozdelený do dvoch oblastí:

systémová oblasť a

dátovú oblasť.

Systémová oblasť sa vytvára a inicializuje pri formátovaní a následne sa aktualizuje pri manipulácii so štruktúrou súboru.

Oblasť systému pozostáva z nasledujúcich komponentov:

Zavádzací sektor obsahujúci zavádzací záznam (boot record);

Vyhradené sektory (nemusia byť);

alokačné tabuľky súborov (FAT, tabuľka prideľovania súborov);

Koreňový adresár (ROOT).

Tieto komponenty sú umiestnené na disku jeden po druhom.

Dátová oblasť obsahuje súbory a adresáre podriadené koreňovému adresáru.

Údajová oblasť je rozdelená do takzvaných zhlukov. Klaster je jeden alebo viacero súvislých sektorov dátovej oblasti. Na druhej strane klaster je najmenšia adresovateľná jednotka diskového priestoru pridelená súboru. Tie. súbor alebo adresár zaberá celý počet klastrov. Ak chcete vytvoriť a zapísať nový súbor na disk, operačný systém mu pridelí niekoľko voľných diskových klastrov. Tieto zhluky na seba nemusia nadväzovať. Pre každý súbor je uložený zoznam všetkých čísel klastrov, ktoré sú tomuto súboru poskytnuté.

Rozdelenie oblasti údajov na klastre namiesto použitia sektorov vám umožňuje:

· zmenšiť veľkosť tabuľky FAT;

Znížte fragmentáciu súborov

Znižuje dĺžku reťazcov súborov Þ urýchliť prístup k súborom.

Príliš veľká veľkosť klastra však vedie k neefektívnemu využívaniu dátovej oblasti, najmä v prípade veľkého počtu malých súborov (napokon, na každý súbor sa stratí v priemere polovica klastra).

V moderných súborových systémoch (FAT 32, HPFS, NTFS) je tento problém vyriešený obmedzením veľkosti klastra (maximálne 4 KB)

Mapa dátovej oblasti je T tabuľka prideľovania súborov (File Allocation Table - FAT) Každý prvok tabuľky FAT (12, 16 alebo 32 bitov) zodpovedá jednému diskovému klastru a charakterizuje jeho stav: voľný, zaneprázdnený alebo je zlý klaster.

· Ak je klaster priradený k akémukoľvek súboru (tj zaneprázdnený), potom príslušný prvok FAT obsahuje číslo nasledujúceho klastra súborov;

· posledný zhluk súboru je označený číslom v rozsahu FF8h - FFFh (FFF8h - FFFFh);

· ak je klaster voľný, obsahuje nulovú hodnotu 000h (0000h);

· Klaster, ktorý je nepoužiteľný (zlyhal), je označený číslom FF7h (FFF7h).

V tabuľke FAT sú teda klastre patriace do rovnakého súboru prepojené v reťazcoch.

Alokačná tabuľka súborov je uložená hneď za bootovacím záznamom logického disku, jej presné umiestnenie je popísané v špeciálnom poli v boot sektore.

Je uložený v dvoch rovnakých kópiách, ktoré na seba nadväzujú. Keď je prvá kópia tabuľky zničená, použije sa druhá.

Vzhľadom na to, že FAT sa pri prístupe na disk používa veľmi intenzívne, zvyčajne sa načíta do pamäte RAM (do vyrovnávacej pamäte I/O alebo vyrovnávacej pamäte) a zostáva tam čo najdlhšie.

Hlavnou nevýhodou FAT je pomalá práca so súbormi. Pri vytváraní súboru funguje pravidlo - vyberie sa prvý voľný klaster. To vedie k fragmentácii disku a zložitým reťazcom súborov. Preto spomalenie práce so súbormi.

Na zobrazenie a úpravu tabuľky FAT môžete použiť užitočnosťdiskEditor.

Podrobné informácie o samotnom súbore sú uložené v inej štruktúre nazývanej koreňový adresár. Každý logický disk má svoj vlastný koreňový adresár (ROOT, anglicky - root).

Koreňový adresár popisuje súbory a iné adresáre. Prvok adresára je deskriptor súboru (deskriptor).

Deskriptor každého súboru a adresára ho obsahuje

· názov

· predĺženie

dátum vytvorenia alebo poslednej úpravy

čas vytvorenia alebo poslednej úpravy

atribúty (archív, atribút adresára, atribút zväzku, systém, skrytý, len na čítanie)

dĺžka súboru (pre adresár - 0)

rezervované pole, ktoré sa nepoužíva

· číslo prvého klastra v reťazci klastrov priradených k súboru alebo adresáru; po prijatí tohto čísla operačný systém podľa tabuľky FAT zistí aj všetky ostatné čísla klastrov súborov.

Používateľ teda spustí súbor na vykonanie. Operačný systém hľadá súbor s požadovaným názvom pohľadom na popisy súborov v aktuálnom adresári. Keď sa požadovaný prvok nájde v aktuálnom adresári, operačný systém načíta číslo prvého klastra tohto súboru a potom určí zostávajúce čísla klastrov z tabuľky FAT. Dáta z týchto klastrov sa načítajú do pamäte RAM, zlúčia sa do jednej súvislej sekcie. Operačný systém prenesie riadenie do súboru a program sa spustí.

Ak chcete zobraziť a upraviť adresár ROOT, môžete použiť aj užitočnosťdiskEditor.

Systém súborov VFAT

Súborový systém VFAT (virtuálny FAT) sa prvýkrát objavil v systéme Windows for Workgroups 3.11 a bol navrhnutý pre súbor I/O v chránenom režime.

Tento súborový systém sa používa v systéme Windows 95.

Je tiež podporovaný vo Windows NT 4.

VFAT je „natívny“ 32-bitový súborový systém Windows 95. Je riadený ovládačom VFAT .VXD.

VFAT používa 32-bitový kód pre všetky operácie so súbormi a môže používať 32-bitové ovládače chráneného režimu.

ALE, položky tabuľky alokácie súborov zostávajú 12- alebo 16-bitové, takže na disku sa používa rovnaká dátová štruktúra (FAT). Tie. f formát tabuľkyVFAT je to isté, rovnako ako formát FAT.

VFAT spolu s názvami "8.3". podporuje dlhé názvy súborov. (VFAT sa často hovorí ako FAT s podporou dlhých názvov).

Hlavnou nevýhodou VFAT sú veľké straty pri klastrovaní s veľkými veľkosťami logických diskov a obmedzenia veľkosti samotného logického disku.

Systém súborov TUKY 32

Toto je nová implementácia myšlienky používania tabuľky FAT.

FAT 32 je úplne nezávislý 32-bitový súborový systém.

Prvýkrát použité v systéme Windows OSR 2 (OEM Service Release 2).

FAT 32 sa v súčasnosti používa v systémoch Windows 98 a Windows ME.

Obsahuje množstvo vylepšení a doplnkov oproti predchádzajúcim implementáciám FAT.

1. Oveľa efektívnejšie využitie miesta na disku vďaka tomu, že využíva menšie klastre (4 KB) – odhaduje sa, že ušetrí až 15 %.

2. Má rozšírený zavádzací záznam, ktorý vám umožňuje vytvárať kópie kritických dátových štruktúr Þ zvyšuje odolnosť disku proti narušeniu štruktúr disku

3. Môžete použiť zálohu FAT namiesto štandardnej.

4. Môže presunúť koreňový adresár, inými slovami, koreňový adresár môže byť na ľubovoľnom mieste Þ odstraňuje obmedzenie veľkosti koreňového adresára (512 prvkov, keďže ROOT mal zaberať jeden klaster).

5. Vylepšená štruktúra koreňového adresára

Objavili sa ďalšie polia, napríklad čas vytvorenia, dátum vytvorenia, dátum posledného prístupu, kontrolný súčet

Stále existuje viacero deskriptorov pre dlhý názov súboru.

Systém súborov HPFS

HPFS (High Performance File System) je vysoko výkonný súborový systém.

HPFS sa prvýkrát objavil v OS/2 1.2 a LAN Manager.

Uveďme zoznam hlavné vlastnosti HPFS.

· Hlavným rozdielom sú základné princípy umiestňovania súborov na disk a princípy ukladania informácií o umiestnení súborov. Vďaka týmto princípom má HPFS vysoký výkon a odolnosť voči chybám, je spoľahlivý systém súborov.

Miesto na disku v HPFS nie je prideľované klastrami (ako vo FAT), ale bloky. V modernej implementácii sa veľkosť bloku rovná jednému sektoru, ale v zásade môže mať inú veľkosť. (V skutočnosti je blok zhlukom, iba zhluk sa vždy rovná jednému sektoru). Usporiadanie súborov v takýchto malých blokoch umožňuje efektívnejšie využívať miesto na disku, pretože réžia voľného miesta je v priemere len (pol sektora) 256 bajtov na súbor. Pripomeňme, že čím väčšia je veľkosť klastra, tým viac miesta na disku sa plytvá.

Systém HPFS sa snaží usporiadať súbor do súvislých blokov, alebo ak to nie je možné, umiestniť ho na disk takým spôsobom, rozsahov(úlomky) súboru boli fyzicky čo najbližšie k sebe. Tento prístup je nevyhnutný znižuje čas polohovania zapisovacích/čítacích hláv pevný disk a latencia (oneskorenie medzi polohou čítacej/zápisovej hlavy na správnej stope). Pripomeňme, že v súbore FAT sa jednoducho pridelí prvý voľný klaster.

Rozsahy(rozsah) - fragmenty súborov umiestnené v susedných sektoroch disku. Súbor má aspoň jeden rozsah, ak nie je fragmentovaný, a viac ako jeden rozsah inak.

Použité metóda vyvážené binárne stromy na ukladanie a vyhľadávanie informácií o umiestnení súborov (adresáre sú uložené v strede disku, navyše je zabezpečené automatické triedenie adresárov), čo je nevyhnutné zlepšuje výkon HPFS (oproti FAT).

HPFS poskytuje špeciálne rozšírené atribúty súborov, ktoré to umožňujú spravovať prístup k súborom a adresárom.

Rozšírené atribúty (rozšírené atribúty, EAs ) vám umožní uložiť ďalšie informácie o súbore. Ku každému súboru môže byť napríklad priradený jeho jedinečný grafický obrázok (ikona), popis súboru, komentár, informácia o vlastníkovi súboru atď.

C Štruktúra oddielu HPFS


Na začiatku oddielu s nainštalovaným HPFS sú tri ovládací blok:

boot block (boot block),

prídavný blok (superblok) a

Náhradný (záložný) blok (náhradný blok).

Zaberajú 18 sektorov.

Všetok ostatný diskový priestor v HPFS je rozdelený na časti zo susedných sektorov - pruhy(pásik - pás, páska). Každý pruh zaberá 8 MB na disku.

Každý jazdný pruh a má svoj vlastný bitmapa prideľovania sektorov.Bitmapa ukazuje, ktoré sektory daného pásma sú obsadené a ktoré voľné. Každý sektor dátového pruhu zodpovedá jednému bitu v jeho bitovej mape. Ak bit = 1, sektor je zaneprázdnený, ak 0 - voľný.

Bitmapy dvoch pásiem sú umiestnené vedľa seba na disku, rovnako ako samotné pásy. To znamená, že postupnosť pruhov a kariet vyzerá ako na obr.

Porovnať sTUK. Pre celý disk existuje len jedna „bitmapa“ (tabuľka FAT). A aby ste s ním mohli pracovať, musíte pohybovať čítacími / zapisovacími hlavami v priemere cez polovicu disku.

Aby sa skrátil čas polohovania čítacích/zápisových hláv pevného disku, je disk HPFS rozdelený na pásiky.

Zvážte kontrolné bloky.

Bootovací blok (bootblokovať)

Obsahuje názov zväzku, jeho sériové číslo, blok nastavení systému BIOS a spúšťací program.

Bootstrap nájde súbor OS 2 LDR , načíta ho do pamäte a odovzdá riadenie tomuto zavádzaciemu programu OS, ktorý následne načíta jadro OS/2 z disku do pamäte - OS 2 KRNL. A už OS 2 KRIML pomocou informácií zo súboru KONFIG. SYS načíta všetky ostatné potrebné programové moduly a dátové bloky do pamäte.

Bootovací blok sa nachádza v sektoroch 0 až 15.

SuperBlokovať(super blok)

Obsahuje

Ukazovateľ na zoznam bitmapových máp ( bitmap block list ). V tomto zozname sú uvedené všetky bloky na disku, ktoré obsahujú bitové mapy používané na detekciu voľných sektorov;

ukazovateľ na zoznam zlých blokov (zoznam zlých blokov). Keď systém zistí poškodený blok, pridá sa do tohto zoznamu a už sa nepoužíva na ukladanie informácií;

ukazovateľ na skupinu adresárov (adresárové pásmo),

ukazovateľ na súborový uzol (F -node) koreňového adresára,

· dátum poslednej kontroly partície programom CHKDSK;

informácie o veľkosti pruhu (v aktuálnej implementácii HPFS - 8 MB).

Super blok je umiestnený v 16. sektore.

Rezervnýblokovať(náhradný blok)

Obsahuje

ukazovateľ na mapu núdzovej náhrady (mapa rýchlej opravy alebo oblasti rýchlej opravy);

· ukazovateľ na zoznam voľných náhradných blokov (adresár zoznam núdzových voľných blokov);

množstvo systémových príznakov a deskriptorov.

Tento blok sa nachádza v sektore 17 disku.

Náhradný blok poskytuje vysokú odolnosť proti chybám systému súborov HPFS a umožňuje vám obnoviť poškodené údaje na disku.

Princíp umiestňovania súborov

Rozsahy(rozsah) - fragmenty súborov umiestnené v susedných sektoroch disku. Súbor má aspoň jeden rozsah, ak nie je fragmentovaný, a viac ako jeden rozsah inak.

Aby sa skrátil čas polohovania čítacích/zápisových hláv pevného disku, systém HPFS vyhľadáva

1) umiestnite súbor do susedných blokov;

2) ak to nie je možné, umiestnite rozsahy fragmentovaného súboru čo najbližšie k sebe,

Na tento účel používa HPFS štatistiku a tiež sa snaží podmienečne vyhradiť aspoň 4 kilobajty miesta na konci súborov, ktoré rastú.

Zásady ukladania informácií o umiestnení súborov

Každý súbor a adresár na disku má svoj vlastný Uzol súboru F-Node. Toto je štruktúra, ktorá obsahuje informácie o umiestnení súboru a jeho rozšírených atribútoch.

Každý F-uzol zaberá jeden sektor a je vždy umiestnený v blízkosti jeho súboru alebo adresára (zvyčajne tesne pred súborom alebo adresárom). F-Uzol obsahuje

dĺžka,

prvých 15 znakov názvu súboru,

Špeciálne servisné informácie

Štatistika prístupu k súborom

Rozšírené atribúty súboru

zoznam prístupových práv (alebo iba časť tohto zoznamu, ak je veľmi veľký); ak sú rozšírené atribúty príliš veľké pre uzol súboru, zapíše sa doň ukazovateľ na ne.

asociatívne informácie o umiestnení a podriadenosti súboru a pod.

Ak je súbor súvislý, jeho umiestnenie na disku je opísané dvoma 32-bitovými číslami. Prvé číslo je ukazovateľ na prvý blok súboru a druhé je dĺžka rozsahu (počet po sebe nasledujúcich blokov, ktoré patria do súboru).

Ak je súbor fragmentovaný, umiestnenie jeho rozsahov je opísané v uzle súboru s ďalšími pármi 32-bitových čísel.

Uzol súboru môže obsahovať informácie až o ôsmich rozsahoch súboru. Ak má súbor viac rozsahov, do jeho súborového uzla sa zapíše ukazovateľ na alokačný blok, ktorý môže obsahovať až 40 ukazovateľov na rozsahy alebo, analogicky s blokom adresárového stromu, na iné alokačné bloky.

Štruktúra a umiestnenie adresárov

Používa sa na ukladanie adresárov. pruh v strede disku.

Tento pás sa nazýva adresárkapela.

Ak je plný, HPFS začne umiestňovať adresáre súborov do iných pruhov.

Umiestnenie tejto informačnej štruktúry v strede disku výrazne znižuje priemerný čas polohovania čítacích/zápisových hláv.

Avšak výrazne väčší príspevok (v porovnaní s umiestnením adresárového pásma v strede logického disku) k výkonu HPFS pochádza z používania metóda vyvážené binárne stromy na ukladanie a získavanie informácií o umiestnení súborov.

Pripomeňme si to v súborovom systéme TUK adresár má lineárnu štruktúru, nie je špeciálne usporiadaná, takže pri hľadaní súboru ho musíte postupne prehliadať od úplného začiatku.

V HPFS je adresárová štruktúra vyvážený strom so záznamami v abecednom poradí.

Každý záznam v strome obsahuje

atribúty súboru,

ukazovateľ na príslušný uzol súboru,

informácie o čase a dátume vytvorenia súboru, čase a dátume poslednej aktualizácie a prístupu,

dĺžka údajov obsahujúcich rozšírené atribúty,

počítadlo prístupu k súborom

Dĺžka názvu súboru

samotný názov

a ďalšie informácie.

Pri vyhľadávaní súboru v adresári sa súborový systém HPFS pozerá len na potrebné vetvy binárneho stromu. Tento spôsob je mnohonásobne efektívnejší ako postupné čítanie všetkých záznamov v adresári, čo je prípad systému FAT.

Veľkosť každého z blokov v zmysle alokovaných adresárov v súčasnej implementácii HPFS je 2 KB. Veľkosť záznamu popisujúceho súbor závisí od veľkosti názvu súboru. Ak je názov 13 bajtov (pre formát 8.3), potom 2K blok môže obsahovať až 40 deskriptorov súborov. Bloky sú navzájom prepojené pomocou zoznamu.

Problémy

Pri premenovávaní súborov môže dôjsť k takzvanému opätovnému vyváženiu stromu. Výsledkom môže byť vytvorenie súboru, jeho premenovanie alebo vymazanie kaskádové adresárové bloky. V skutočnosti môže premenovanie zlyhať z dôvodu nedostatku miesta na disku, aj keď sa veľkosť samotného súboru nezväčšila. Aby sa predišlo tejto katastrofe, HPFS udržiava malý fond voľných blokov, ktoré možno použiť v prípade katastrofy. Táto operácia môže vyžadovať pridelenie ďalších blokov na plný disk. Ukazovateľ na túto oblasť voľných blokov je uložený v SpareBlock,

Ako sú súbory a adresáre umiestnené na diskuHPFS:

· informácie o umiestnení súborov sú rozptýlené po celom disku, pričom záznamy každého konkrétneho súboru sú umiestnené (ak je to možné) v susedných sektoroch a blízko údajov o ich umiestnení;

adresáre sú umiestnené uprostred miesta na disku;

· adresáre sú uložené ako binárny vyvážený strom s položkami usporiadanými v abecednom poradí.

Spoľahlivosť ukladania dát v HPFS

Každý súborový systém musí mať prostriedky na opravu chýb, ktoré sa vyskytnú pri zápise informácií na disk. Systém HPFS používa mechanizmus núdzovej výmeny ( rýchla oprava).

Ak systém súborov HPFS narazí na problém pri zapisovaní údajov na disk, zobrazí príslušné chybové hlásenie. HPFS potom uloží informácie, ktoré mali byť zapísané do chybného sektora, do jedného z rezervných sektorov vopred vyhradených pre tento prípad. Zoznam voľných náhradných blokov je uložený v náhradnom bloku HPFS. Ak sa pri zápise dát do normálneho bloku zistí chyba, HPFS vyberie jeden z voľných náhradných blokov a uloží dáta do neho. Systém súborov sa potom aktualizuje núdzová náhradná karta v rezervnej jednotke.

Táto mapa sú jednoducho dvojice dvojitých slov, z ktorých každé je 32-bitové číslo sektora.

Prvé číslo označuje chybný sektor a druhé - sektor medzi dostupnými náhradnými sektormi, ktorý bol vybraný na jeho nahradenie.

Po nahradení chybného sektora náhradným sa náhradná karta zapíše na disk a na obrazovke sa zobrazí kontextové okno informujúce používateľa, že sa vyskytla chyba zápisu na disk. Zakaždým, keď systém zapíše alebo načíta sektor disku, pozrie sa na mapu horúcich rezerv a nahradí všetky čísla chybných sektorov číslami náhradných sektorov zodpovedajúcimi údajmi.

Je potrebné poznamenať, že tento preklad čísel výrazne neovplyvňuje výkon systému, pretože sa vykonáva iba pri fyzickom prístupe na disk, ale nie pri čítaní údajov z vyrovnávacej pamäte disku.

Systém súborov NTFS

Súborový systém NTFS (New Technology File System) obsahuje množstvo významných vylepšení a zmien, ktoré ho výrazne odlišujú od iných súborových systémov.

Upozorňujeme, že až na zriedkavé výnimky Na oddiely NTFS je možné pristupovať iba priamo zWindowsNT, aj keď existujú zodpovedajúce implementácie systémov správy súborov pre množstvo operačných systémov na čítanie súborov zo zväzkov NTFS.

Zatiaľ však neexistujú žiadne plnohodnotné implementácie pre prácu s NTFS mimo Windows NT.

Systém NTFS nie je podporovaný v široko používaných operačných systémoch Windows 98 a Windows Millennium Edition.

Kľúčové vlastnostiNTFS

práca na veľkých diskoch je efektívna (oveľa efektívnejšia ako vo FAT);

Existujú nástroje na obmedzenie prístupu k súborom a adresárom Þ Oddiely NTFS poskytujú lokálne zabezpečenie pre súbory aj adresáre;

Bol zavedený transakčný mechanizmus, v ktorom ťažba dreva operácie so súbormi Þ výrazné zvýšenie spoľahlivosti;

· mnohé obmedzenia týkajúce sa maximálneho počtu diskových sektorov a/alebo klastrov boli odstránené;

· názov súboru v NTFS, na rozdiel od súborových systémov FAT a HPFS, môže obsahovať ľubovoľné znaky, vrátane celej sady národných abecied, keďže údaje sú prezentované v Unicode - 16-bitovej reprezentácii, ktorá dáva 65535 rôznych znakov. Maximálna dĺžka názvu súboru v systéme NTFS je 255 znakov.

· NTFS má tiež vstavané kompresné nástroje, ktoré môžete použiť na jednotlivé súbory, celé adresáre a dokonca aj zväzky (a následne ich zrušiť alebo priradiť podľa vlastného uváženia).

Štruktúra zväzku so systémom súborov NTFS

Oddiel NTFS sa nazýva zväzok. Maximálne možné veľkosti zväzkov (a veľkosti súborov) sú 16 Ebajtov (2 exabajty**64).

Rovnako ako iné systémy, NTFS rozdeľuje diskový priestor zväzku na klastre, bloky údajov, ktoré sú adresované ako jednotky údajov. NTFS podporuje veľkosti klastrov od 512 bajtov do 64 KB; štandardom je klaster 2 alebo 4 KB.

Všetok diskový priestor v systéme NTFS je rozdelený na dve nerovnaké časti.


Prvých 12 % disku je vyhradených pre takzvanú zónu MFT – priestor, ktorý môže hlavná služba obsadiť, pričom sa zväčšuje jeho veľkosť. metasúbor MFT.

Do tejto oblasti nie je možné zapisovať žiadne údaje. Zóna MFT je vždy prázdna – robí sa to preto, aby sa súbor MFT, ak je to možné, nefragmentoval pri raste.

Zvyšných 88 % objemu tvorí obyčajný priestor na ukladanie súborov.

MFT (majstersúborstôl- všeobecná tabuľka súborov) je v podstate adresár všetkých ostatných súborov na disku, vrátane neho samotného. Je určený na určenie umiestnenia súborov.

MFT pozostáva zo záznamov s pevnou veľkosťou. Veľkosť položky MFT (minimálne 1 KB a maximálne 4 KB) sa určuje počas formátovania zväzku.

Každý záznam zodpovedá súboru.

Prvých 16 záznamov má charakter služby a nie sú dostupné pre operačný systém – sú tzv metasúbory, a úplne prvým metasúborom je samotný MFT.

Týchto prvých 16 prvkov MFT je jedinou časťou disku, ktorá má striktne pevnú polohu. Kópia tých istých 16 záznamov sa kvôli bezpečnosti uchováva v strede zväzku.

Zvyšné časti súboru MFT môžu byť umiestnené, ako každý iný súbor, na ľubovoľných miestach na disku.

Metasúbory sú svojou povahou služby – každý z nich je zodpovedný za nejaký aspekt systému. Metasúbory sa nachádzajú v koreňovom adresári zväzku NTFS. Všetky začínajú znakom mena „$“, hoci je ťažké získať o nich akékoľvek informácie pomocou štandardných nástrojov. V tabuľke. sú uvedené hlavné metasúbory a ich účel.

Názov metasúboru

Účel metasúboru

$ MFT

Samotná tabuľka hlavných súborov

$MFTmirr

Kópia prvých 16 záznamov MFT umiestnená v strede zväzku

$logfile

Súbor podpory protokolovania

$Volume

Servisné informácie - štítok zväzku, verzia systému súborov atď.

$AttrDef

Zoznam štandardných atribútov súborov na zväzku

Koreňový adresár

$Bitmap

Mapa voľného priestoru

$boot

Boot sektor (ak je oddiel bootovateľný)

$kvóta

Súbor, ktorý zaznamenáva používateľské práva na používanie miesta na disku (tento súbor začal fungovať iba v Windows 2000 s NTFS 5.0)

$upcase

Súbor – tabuľka zhody medzi veľkými a malými písmenami v názvoch súborov. V systéme NTFS sa názvy súborov zapisujú Unicode (čo je 65 tisíc rôznych znakov) a hľadanie veľkých a malých ekvivalentov je v tomto prípade netriviálna úloha

Príslušný záznam MFT ukladá všetky informácie o súbore:

· Názov súboru,

· veľkosť;

atribúty súboru

pozície na disku jednotlivých fragmentov a pod.

Ak pre informáciu chýba jeden záznam MFT, použije sa niekoľko záznamov a nie nevyhnutne za sebou.

Ak súbor nie je príliš veľký, potom sa údaje súboru uložia priamo do MFT, do priestoru zostávajúceho z hlavných údajov, v rámci jedného MFT záznamu.

Súbor na zväzku NTFS je identifikovaný tzv odkaz na súbor(File Reference ), ktorý je reprezentovaný ako 64-bitové číslo.

číslo súboru, ktoré zodpovedá číslu záznamu v MFT,

a poradové čísla. Toto číslo sa zvýši vždy, keď sa dané číslo znova použije v MFT, čo umožňuje systému súborov NTFS vykonávať kontroly vnútornej integrity.

Každý súbor v systéme NTFS je reprezentovaný tečie(streams ), to znamená, že nemá „len dáta“ ako také, ale existujú streamy.

Jedným z prúdov sú údaje súboru.

Väčšina atribútov súborov sú tiež prúdy.

Ukazuje sa teda, že súbor má iba jednu základnú entitu – číslo v MFT a všetko ostatné, vrátane jeho streamov, je voliteľné.

Tento prístup sa dá efektívne využiť – napríklad k súboru je možné „prilepiť“ iný prúd zapísaním akýchkoľvek údajov.

Štandardné atribúty pre súbory a adresáre na zväzku NTFS majú pevné názvy a kódy typov.

Katalóg NTFS je špeciálny súbor, ktorý ukladá odkazy na iné súbory a adresáre.

Katalógový súbor je rozdelený do blokov, z ktorých každý obsahuje

· Názov súboru,

základné atribúty a

Koreňový adresár disku sa nelíši od bežných adresárov, až na špeciálny odkaz naň zo začiatku metasúboru MFT.

Vnútorná adresárová štruktúra je binárny strom ako v HPFS.

Počet súborov v koreňovom a nekorenovom adresári je neobmedzený.

Súborový systém NTFS podporuje objektový model zabezpečenia NT: NTFS zaobchádza s adresármi a súbormi ako s heterogénnymi objektmi a udržiava samostatné (hoci sa prekrývajúce) zoznamy povolení pre každý typ.

NTFS poskytuje zabezpečenie na úrovni súborov; to znamená, že prístupové práva k zväzkom, adresárom a súborom môžu závisieť od používateľského účtu a skupín, do ktorých používateľ patrí. Zakaždým, keď používateľ pristúpi k objektu súborového systému, jeho oprávnenia sa skontrolujú v porovnaní so zoznamom oprávnení objektu. Ak má používateľ dostatočnú úroveň práv, jeho žiadosti je vyhovené; v opačnom prípade sa žiadosť zamietne. Tento bezpečnostný model sa vzťahuje na prihlásenie lokálneho používateľa na počítačoch NT aj na požiadavky vzdialenej siete.

NTFS má tiež niektoré funkcie samoliečby. NTFS podporuje rôzne mechanizmy na kontrolu integrity systému, vrátane protokolovania transakcií, ktoré vám umožňuje prehrávať operácie zápisu súborov proti špeciálnemu systémovému protokolu.

O vedenie denníka spisové operácie, spisový systém zaznamenáva prebiehajúce zmeny v osobitnom služobnom spise. Na začiatku operácie spojenej so zmenou štruktúry súboru sa vytvorí zodpovedajúca značka. Ak pri operáciách so súbormi dôjde k zlyhaniu, uvedená značka spustenia operácie zostane označená ako nedokončená. Ak vykonáte kontrolu integrity súborového systému po reštarte počítača, tieto čakajúce operácie budú zrušené a súbory budú obnovené do pôvodného stavu. Ak je operácia zmeny údajov v súboroch dokončená normálne, potom je operácia označená ako dokončená práve v tomto servisnom súbore podpory protokolovania.

Hlavná nevýhoda súborového systémuNTFS- servisné dáta zaberajú veľa miesta (napríklad každý prvok adresára zaberá 2 KB) - pre malé partície môžu servisné dáta zaberať až 25 % objemu média.

Þ NTFS nemožno použiť na formátovanie diskiet. Nepoužívajte ho na formátovanie oddielov menších ako 100 MB.

súborový systém OS UNIX

Vo svete UNIX existuje niekoľko rôznych druhov súborových systémov s vlastnou štruktúrou externej pamäte. Najznámejšie sú tradičný súborový systém UNIX System V (s5) a súborový systém UNIX BSD family (ufs).

Zvážte s 5.

Súbor UNIX je súbor znakov s náhodným prístupom.

Súbor má štruktúru, ktorú mu používateľ uloží.

Súborový systém Unix je hierarchický súborový systém pre viacerých používateľov.

Súborový systém má stromovú štruktúru. Vrcholy (medziuzly) stromu sú adresáre s odkazmi na iné adresáre alebo súbory. Listy stromu zodpovedajú súborom alebo prázdnym adresárom.

Komentujte. V skutočnosti súborový systém Unix nie je strom. Faktom je, že systém má možnosť prelomiť hierarchiu vo forme stromu, pretože je možné priradiť viacero mien s rovnakým obsahom súboru.

Štruktúra disku

Disk je rozdelený na bloky. Veľkosť bloku údajov sa určuje, keď je súborový systém naformátovaný pomocou príkazu mkfs a možno ju nastaviť na 512, 1024, 2048, 4096 alebo 8192 bajtov.

Počítame po 512 bajtoch (veľkosť sektora).

Priestor na disku je rozdelený do nasledujúcich oblastí (pozri obrázok):

nakladací blok;

ovládanie superbloku;

rad i-uzlov;

priestor na ukladanie obsahu (údajov) súborov;

sada voľných blokov (prepojených v zozname);

Bootstrap blok

Superblok

i - uzol

. . .

i - uzol

Komentujte. Pre súborový systém UFS - toto všetko sa opakuje pre skupinu valcov (okrem Boot bloku) + je pridelená špeciálna oblasť na popis skupiny valcov

Bootstrap blok

Blok sa nachádza v bloku #0. (Pripomeňme, že umiestnenie tohto bloku v nulovom bloku systémového zariadenia je určené hardvérom, pretože zavádzač hardvéru vždy odkazuje na nulový blok systémového zariadenia. Toto je posledný komponent súborového systému, ktorý závisí od hardvéru.)

Zavádzací blok obsahuje spinup program, ktorý sa používa na počiatočné spustenie operačného systému UNIX. V súborových systémoch s 5 sa skutočne používa iba zavádzací blok koreňového súborového systému. V sekundárnych súborových systémoch je táto oblasť prítomná, ale nepoužíva sa.

Superblok

Obsahuje prevádzkové informácie o stave súborového systému, ako aj údaje o nastaveniach súborového systému.

Konkrétne superblok obsahuje nasledujúce informácie

počet i-uzlov (indexové deskriptory);

veľkosť oddielu???;

zoznam voľných blokov;

zoznam voľných i-uzlov;

· a ďalšie.

Venujme pozornosť! Voľné miesto na disku je prepojený zoznam voľných blokov. Tento zoznam je uložený v superbloku.

Prvky zoznamu sú polia s 50 prvkami (ak blok = 512 bajtov, potom prvok = 16 bitov):

· Prvky poľa č. 1-48 obsahujú počty voľných blokov priestoru blokov súborov od 2 do 49.

prvok #0 obsahuje smerník na pokračovanie zoznamu a

· posledný prvok (#49) obsahuje ukazovateľ na voľný prvok v poli.

Ak niektorý proces potrebuje voľný blok pre príponu súboru, potom systém vyberie prvok poľa ukazovateľom (na voľný prvok) a blok s číslom uloženým v tomto prvku sa poskytne súboru. Ak sa súbor zmenší, uvoľnené čísla sa pridajú do poľa voľných blokov a upraví sa ukazovateľ na voľný prvok.

Keďže veľkosť poľa je 50 prvkov, sú možné dve kritické situácie:

1. Keď uvoľníme bloky súborov, ale nezmestia sa do tohto poľa. V tomto prípade sa zo súborového systému vyberie jeden voľný blok a do tohto bloku sa skopíruje úplne vyplnené pole voľných blokov, po čom sa hodnota ukazovateľa na voľný prvok nastaví na nulu a v nulovom prvku poľa, ktorý je v superbloku, sa zapíše číslo bloku, do ktorého sa systém rozhodol skopírovať obsah poľa.. V tomto bode sa vytvorí nový prvok zoznamu voľných blokov (každý s 50 prvkami).

2. Keď sa vyčerpá obsah prvkov poľa voľných blokov (v tomto prípade sa nulový prvok poľa rovná nule) Ak sa tento prvok nerovná nule, potom to znamená, že pole pokračuje . Toto pokračovanie sa načíta do kópie superbloku v RAM.

Zoznam voľnýchi-uzly. Toto je vyrovnávacia pamäť pozostávajúca zo 100 prvkov. Obsahuje informácie o 100 číslach i-uzlov, ktoré sú momentálne voľné.

Superblock je vždy v RAM

Þ všetky operácie (uvoľnenie a obsadenie blokov a i-uzlov prebieha v RAM Þ minimalizácia výmeny diskov.

Ale! Ak sa obsah superbloku nezapíše na disk a vypne sa napájanie, nastanú problémy (rozpor medzi skutočným stavom súborového systému a obsahom superbloku). Ale to je už požiadavka na spoľahlivosť vybavenia systému.

Komentujte. Súborové systémy UFS podporujú viacero kópií superbloku (jedna kópia na skupinu valcov) pre zvýšenú odolnosť

Oblasť Inode

Toto je pole popisov súborov tzv i-uzly (ja-uzol).(64 bajtov?)

Každý indexový deskriptor (i-uzol) súboru obsahuje:

Typ súboru (súbor/adresár/špeciálny súbor/fifo/socket)

Atribúty (oprávnenia) - 10

ID vlastníka súboru

ID skupiny, ktorá vlastní súbor

Čas vytvorenia súboru

Čas úpravy súboru

Posledný prístup k súboru

Dĺžka súboru

Počet odkazov na daný i-uzol z rôznych adresárov

Adresy blokov súborov

!Poznámka. Nie je tu žiadny názov súboru

Pozrime sa bližšie na to, ako je to organizované. blokové adresovanie, ktorý obsahuje súbor. Takže v poli s adresami sú čísla prvých 10 blokov súboru.

Ak súbor presiahne desať blokov, začne fungovať nasledujúci mechanizmus: 11. prvok poľa obsahuje číslo bloku, ktorý obsahuje 128 (256) odkazov na bloky daného súboru. V prípade, že je súbor ešte väčší, tak sa použije 12. prvok poľa - obsahuje číslo bloku, ktorý obsahuje 128 (256) čísel blokov, pričom každý blok obsahuje 128 (256) čísel blokov systému súborov. A ak je súbor ešte väčší, potom sa použije 13. prvok - kde sa hĺbka vnorenia zoznamu zvýši o jeden.

Takto môžeme získať súbor s veľkosťou (10+128+128 2 +128 3)*512.

To môže byť znázornené v nasledujúcej forme:

Adresa 1. bloku súboru

Adresa 2. bloku súboru

Adresa 10. bloku súboru

Nepriama bloková adresa (blok s 256 blokovými adresami)

Bloková adresa 2. nepriameho adresovania (blok s 256 blokmi adries s adresami)

Bloková adresa 3. nepriameho adresovania (blok s blokovými adresami s blokovými adresami s adresami)

Ochrana súborov

Teraz sa pozrime na ID vlastníka a skupiny a bezpečnostné bity.

Používa operačný systém Unix trojstupňová hierarchia používateľov:

Prvou úrovňou sú všetci používatelia.

Druhou úrovňou sú skupiny používateľov. (Všetci používatelia sú rozdelení do skupín.

Treťou úrovňou je konkrétny používateľ (Skupiny pozostávajú zo skutočných používateľov). Vďaka tejto trojúrovňovej organizácii používateľov má každý súbor tri atribúty:

1) Vlastník súboru. Tento atribút je spojený s jedným konkrétnym používateľom, ktorý je systémom automaticky priradený ako vlastník súboru. Predvoleným vlastníkom sa môžete stať vytvorením súboru a existuje aj príkaz, ktorý vám umožní zmeniť vlastníka súboru.

2) Ochrana prístupu k súborom. Prístup ku každému súboru je obmedzený v troch kategóriách:

práva vlastníka (čo môže vlastník s týmto súborom robiť vo všeobecnosti - nie nevyhnutne čokoľvek);

práva skupiny, do ktorej patrí vlastník súboru. Vlastník tu nie je zahrnutý (napríklad súbor môže byť pre vlastníka uzamknutý na čítanie a všetci ostatní členovia skupiny môžu z tohto súboru voľne čítať;

všetci ostatní používatelia systému;

Podľa týchto troch kategórií sú regulované tri akcie: čítanie zo súboru, zápis do súboru a spustenie súboru (v systémových mnemotechnických pomôckach R, W, X). V každom súbore tieto tri kategórie definujú, ktorý používateľ môže čítať, ktorý zapisovať a kto ho môže spúšťať ako proces.

Organizácia katalógu

Adresár z pohľadu OS je bežný súbor, ktorý obsahuje údaje o všetkých súboroch, ktoré do adresára patria.

Prvok adresára pozostáva z dvoch polí:

1) číslo i-uzla (sériové číslo v poli i-uzlov) a

2) názov súboru:

Každý adresár obsahuje dva špeciálne názvy: '.' - samotný adresár; „...“ je nadradený adresár.

(Pre koreňový adresár odkazuje rodič sám na seba.)

Vo všeobecnosti môže mať adresár položky odkazujúce na rovnaký i-uzol viac ako raz, ale adresár nemôže mať položky s rovnakým názvom. To znamená, že k obsahu súboru môže byť priradený ľubovoľný počet mien. To sa nazýva viazanie. Zavolá sa položka adresára, ktorá odkazuje na jeden súbor komunikácia.

Súbory existujú nezávisle od položiek adresára a odkazy na adresáre v skutočnosti smerujú na fyzické súbory. Súbor „zmizne“, keď sa odstráni posledný odkaz, ktorý naň ukazuje.

Ak chcete získať prístup k súboru podľa názvu, operačný systém

1. nájde tento názov v adresári obsahujúcom súbor,

2. získa číslo i-uzla súboru,

3. podľa čísla nájde i-uzol v oblasti i-uzlov,

4. z i-uzla dostane adresy blokov, v ktorých sa nachádzajú dáta súboru,

5. číta bloky z dátovej oblasti podľa adries blokov.

Štruktúra diskových oddielov v EXT2 FS

Celý priestor priečky je rozdelený do blokov. Blok môže mať veľkosť 1, 2 alebo 4 kilobajty. Blok je adresovateľná jednotka diskového priestoru.

Bloky vo svojej oblasti sú spojené do skupín blokov. Skupiny blokov v súborovom systéme a bloky v rámci skupiny sú očíslované postupne od 1. Prvý blok na disku je očíslovaný 1 a patrí do skupiny číslo 1. Celkový počet blokov na disku (v diskovej oblasti) je deliteľ veľkosti disku vyjadrený v sektoroch. A počet skupín blokov nemusí deliť počet blokov, pretože posledná skupina blokov nemusí byť úplná. Začiatok každej skupiny blokov má adresu, ktorú možno získať ako ((číslo skupiny - 1)* (počet blokov v skupine)).

Každá skupina blokov má rovnakú štruktúru. Jeho štruktúra je uvedená v tabuľke.

Prvý prvok tejto štruktúry (superblok) je rovnaký pre všetky skupiny a všetky ostatné sú individuálne pre každú skupinu. Superblok je uložený v prvom bloku každej skupiny blokov (s výnimkou skupiny 1, ktorá má bootovací záznam v prvom bloku). Superblok je východiskovým bodom súborového systému. Má veľkosť 1024 bajtov a je vždy umiestnený v posune 1024 bajtov od začiatku súborového systému. Prítomnosť niekoľkých kópií superbloku sa vysvetľuje extrémnym významom tohto prvku súborového systému. Duplikáty Superblock sa používajú pri obnove systému súborov po zlyhaniach.

Informácie uložené v superbloku sa používajú na organizáciu prístupu k zvyšku údajov na disku. Superblok určuje veľkosť súborového systému, maximálny počet súborov v partícii, množstvo voľného miesta a obsahuje informácie o tom, kde hľadať nepridelené oblasti. Keď sa OS spustí, superblok sa načíta do pamäte a všetky zmeny v súborovom systéme sa najskôr prejavia v kópii superbloku umiestnenej v operačnom systéme a na disk sa zapíšu len pravidelne. To zlepšuje výkon systému, pretože mnohí používatelia a procesy neustále aktualizujú súbory. Na druhej strane, pri vypnutí systému sa musí superblok zapísať na disk, čo neumožňuje vypnúť počítač jednoduchým vypnutím napájania. V opačnom prípade pri ďalšom spustení nebudú informácie zapísané v superbloku zodpovedať skutočnému stavu súborového systému.

Za superblokom nasleduje popis skupiny blokov (Group Descriptors). Tento popis obsahuje:

Adresa bloku obsahujúceho bitmapu bloku danej skupiny;

Adresa bloku obsahujúceho bitmapu inodov danej skupiny;

Adresa bloku obsahujúceho tabuľku inodov tejto skupiny;

Počítadlo počtu voľných blokov v tejto skupine;

Počet voľných inódov v tejto skupine;

Počet inodov v tejto skupine, ktoré sú adresármi

a ďalšie údaje.

Informácie uložené v popise skupiny sa používajú na nájdenie blokových a inodových bitmap a tabuľky inodov.

Systém súborov Ext 2 sa vyznačuje:

  • hierarchická štruktúra,
  • koordinované spracovanie dátových polí,
  • dynamická prípona súboru,
  • ochrana informácií v súboroch,
  • zaobchádzanie s periférnymi zariadeniami (ako sú terminály a páskové jednotky) ako so súbormi.

Interná reprezentácia súborov

Každý súbor v systéme Ext 2 má jedinečný index. Index obsahuje informácie, ktoré každý proces potrebuje na prístup k súboru. Spracuje prístupové súbory pomocou dobre definovanej sady systémových volaní a identifikuje súbor pomocou znakového reťazca, ktorý funguje ako názov cesty k súboru. Každý zložený názov jednoznačne identifikuje súbor, vďaka čomu jadro systému prevedie tento názov na index súboru, ktorý obsahuje tabuľku adries, kde sa na disku nachádzajú informácie o súbore. Keďže každý blok na disku je adresovaný svojim číslom, táto tabuľka ukladá kolekciu čísel diskových blokov. Na zvýšenie flexibility pripája jadro k súboru jeden blok po druhom, čo umožňuje, aby boli informácie o súbore rozptýlené po celom súborovom systéme. Takéto rozloženie však komplikuje úlohu hľadania údajov. Tabuľka adries obsahuje zoznam čísel blokov obsahujúcich informácie patriace k súboru.

Súborové inody

Každý súbor na disku má zodpovedajúci súbor inode, ktorý je identifikovaný jeho poradovým číslom - indexom súboru. To znamená, že počet súborov, ktoré je možné vytvoriť v súborovom systéme, je obmedzený počtom inodov, ktorý je buď explicitne nastavený pri vytváraní súborového systému, alebo vypočítaný z fyzickej veľkosti diskovej oblasti. Inody existujú na disku v statickej forme a jadro ich pred prácou načíta do pamäte.

Súbor inode obsahuje nasledujúce informácie:

- Typ a povolenia tohto súboru.

ID vlastníka súboru (Uid vlastníka).

Veľkosť súboru v bajtoch.

Čas posledného prístupu k súboru (Access time).

Čas vytvorenia súboru.

Čas poslednej úpravy súboru.

Čas odstránenia súboru.

ID skupiny (GID).

Odkazy sa počítajú.

Počet blokov obsadených súborom.

Príznaky súboru

Vyhradené pre OS

Ukazovatele na bloky, do ktorých sa zapisujú dáta súboru (príklad priameho a nepriameho adresovania na obr. 1)

Verzia súboru (pre NFS)

Súbor ACL

adresár ACL

Adresa fragmentu

Číslo fragmentu

Veľkosť fragmentu

Katalógy

Adresáre sú súbory.

Jadro ukladá údaje do adresára rovnako ako v bežnom type súboru pomocou indexovej štruktúry a blokov s priamou a nepriamou adresou. Procesy môžu čítať údaje z adresárov rovnakým spôsobom, ako čítajú bežné súbory, avšak exkluzívny prístup k zápisu do adresára je vyhradený jadrom, aby sa zaistilo, že štruktúra adresára je správna.).

Keď proces používa cestu k súboru, jadro vyhľadá v adresároch zodpovedajúce číslo inodu. Po konverzii názvu súboru na číslo inódu sa tento inód umiestni do pamäte a potom sa použije v nasledujúcich požiadavkách.

Ďalšie funkcie EXT2 FS

Okrem štandardných funkcií Unix, EXT2fs poskytuje niektoré ďalšie funkcie, ktoré nie sú bežne podporované súborovými systémami Unix.

Atribúty súborov vám umožňujú zmeniť, ako jadro reaguje pri práci so skupinami súborov. Môžete nastaviť atribúty pre súbor alebo adresár. V druhom prípade súbory vytvorené v tomto adresári zdedia tieto atribúty.

Počas pripojenia systému je možné nastaviť niektoré funkcie súvisiace s atribútmi súborov. Možnosť pripojenia umožňuje správcovi vybrať spôsob vytvárania súborov. Na súborovom systéme špecifickom pre BSD sa súbory vytvárajú s rovnakým ID skupiny ako nadradený adresár. Funkcie systému V sú o niečo zložitejšie. Ak je nastavený bit setgid adresára, vytvorené súbory zdedia ID skupiny adresára a podadresáre zdedia ID skupiny a bit setgid. V opačnom prípade sa súbory a adresáre vytvoria s ID primárnej skupiny volajúceho procesu.

Systém EXT2fs môže využívať synchrónnu modifikáciu dát podobne ako systém BSD. Voľba pripojenia umožňuje správcovi určiť, aby sa všetky údaje (deskriptory indexov, bitové bloky, nepriame bloky a bloky adresárov) zapísali na disk synchrónne, keď sa upravia. To sa dá použiť na dosiahnutie vysokej priepustnosti zápisu, ale výsledkom je aj slabý výkon. V skutočnosti sa táto funkcia zvyčajne nepoužíva, pretože okrem zníženia výkonu môže viesť k strate používateľských údajov, ktoré nie sú označené pri kontrole súborového systému.

EXT2fs vám umožňuje zvoliť veľkosť logického bloku pri vytváraní systému súborov. Môže mať veľkosť 1024, 2048 alebo 4096 bajtov. Použitie veľkých blokov vedie k rýchlejším I/O operáciám (pretože sa zníži počet požiadaviek na disk) a následne k menšiemu pohybu hláv. Na druhej strane použitie veľkých blokov vedie k strate miesta na disku. Zvyčajne posledný blok súboru nie je plne využitý na ukladanie informácií, takže so zväčšovaním veľkosti bloku sa zvyšuje množstvo plytvaného miesta na disku.

EXT2fs vám umožňuje používať zrýchlené symbolické odkazy. Pri použití takýchto odkazov sa nepoužívajú dátové bloky súborového systému. Názov cieľového súboru nie je uložený v dátovom bloku, ale v samotnom inode. Táto štruktúra umožňuje ušetriť miesto na disku a urýchliť spracovanie symbolických odkazov. Samozrejme, priestor vyhradený pre rukoväť je obmedzený, takže nie každý odkaz môže byť reprezentovaný ako zrýchlený odkaz. Maximálna dĺžka názvu súboru v zrýchlenom odkaze je 60 znakov. V blízkej budúcnosti sa plánuje rozšírenie tejto schémy pre malé súbory.

EXT2fs monitoruje stav súborového systému. Jadro používa samostatné pole v superbloku na označenie stavu súborového systému. Ak je súborový systém pripojený v režime čítania/zápisu, jeho stav je nastavený na „Not Clean“. Ak je odpojený alebo opätovne pripojený v režime iba na čítanie, jeho stav je nastavený na „Vyčistiť“. Počas zavádzania systému a kontroly stavu súborového systému sa tieto informácie používajú na určenie, či je potrebná kontrola súborového systému. Jadro tiež umiestňuje niektoré chyby do tohto poľa. Keď jadro zistí nekonzistenciu, súborový systém je označený ako „chybný“. Nástroj na kontrolu súborového systému testuje tieto informácie, aby skontroloval systém, aj keď je jeho stav skutočne "Čistý".

Ignorovanie testovania súborového systému po dlhú dobu môže niekedy viesť k určitým ťažkostiam, takže EXT2fs obsahuje dva spôsoby pravidelnej kontroly systému. Superblok obsahuje počítadlo systémovej montáže. Toto počítadlo sa zvýši vždy, keď je systém pripojený v režime čítania/zápisu. Ak jeho hodnota dosiahne maximálnu hodnotu (je tiež uložená v superbloku), potom testovacia rutina súborového systému spustí kontrolu súborového systému, aj keď je jeho stav "Čistý". Čas poslednej kontroly a maximálny interval medzi kontrolami sú tiež uložené v superbloku. Po dosiahnutí maximálneho intervalu medzi kontrolami sa stav súborového systému ignoruje a spustí sa jeho kontrola.

Optimalizácia výkonu

Systém EXT2fs obsahuje mnoho funkcií, ktoré optimalizujú jeho výkon, čo vedie k zvýšeniu rýchlosti výmeny informácií pri čítaní a zápise súborov.

EXT2fs intenzívne využíva vyrovnávaciu pamäť disku. Keď je potrebné prečítať blok, jadro odošle I/O požiadavku niekoľkým súvislým blokom. Jadro sa teda snaží uistiť, že nasledujúci blok na čítanie už bol načítaný do vyrovnávacej pamäte disku. Takéto operácie sa zvyčajne vykonávajú pri sekvenčnom čítaní súborov.

Systém EXT2fs obsahuje aj veľké množstvo optimalizácií rozloženia informácií. Skupiny blokov sa používajú na zoskupenie zodpovedajúcich inodov a dátových blokov. Jadro sa vždy snaží umiestniť dátové bloky jedného súboru do rovnakej skupiny, ako aj jeho deskriptor. Toto je určené na zníženie pohybu hláv pohonu pri čítaní deskriptora a jeho zodpovedajúcich dátových blokov.

Pri zápise údajov do súboru EXT2fs pri umiestnení nového bloku vopred pridelí až 8 súvislých blokov. Táto metóda vám umožňuje dosiahnuť vysoký výkon pri veľkom zaťažení systému. Umožňuje tiež prideľovať súvislé bloky pre súbory, čo urýchľuje ich následné čítanie.