Což v dřívějších souborových systémech neplatilo. Souborové systémy. Typy souborových systémů. Operace se soubory. Katalogy. Operace s adresáři. (5). Čtení do pole

L 5.1. ARCHITEKTURA OS

klíčová slova: soubor, přípona názvu souboru, atributy souboru, struktura souboru, adresář (složka), cesta k souboru, formátování, sektor, stopa, válec, tabulka alokace souborů (tabulka FAT), cluster, systém souborů, FAT 16, FAT 32, NTFS, MTF , CDFS, příkazy OS, plocha, hlavní panel, ikona objektu a zástupce, hlavní nabídka Windows, okno Windows, záhlaví, panel nástrojů, přetažení, přetažení, " Dirigent", schránka," velitel Norton“, šablony pro výběr a vyhledávání souborů.

operační systém je komplex systémového a servisního softwaru. Na jedné straně se spoléhá na základní počítačový software obsažený v jeho systému BIOS ( základní systém vstup/výstup); na druhou stranu je ona sama oporou pro software vyšší úrovně - aplikační a většina servisních aplikací. Aplikace operačního systému Je zvykem volat programy určené pro práci pod kontrolou daného systému.

Hlavní funkce všech operační systémy- zprostředkovatel. Skládá se z poskytování několika typů rozhraní:

· rozhraní mezi uživatelem a hardwarem počítače (uživatelské rozhraní);

rozhraní mezi softwarem a hardwarem (hardwarově-softwarové rozhraní);

· rozhraní mezi různými typy softwaru (softwarové rozhraní).

I pro jednu hardwarovou platformu, jako je nap
IBM PC, Existuje několik operačních systémů (OS). Podívejme se například na strukturu souborů, hlavní objekty a techniky správy nejběžnějších operačních systémů: MS DOS A Windows XP.

Struktura souborů osobního počítače. Při ukládání dat se řeší dva problémy: jak data uložit v co nejkompaktnější podobě a jak k nim zajistit pohodlný a pohodlný přístup. rychlý přístup(pokud není poskytnut přístup, pak se nejedná o úložiště). Pro zajištění přístupu musí mít data uspořádanou strukturu. Tím se vygenerují data adresy. Bez nich nemáte přístup potřebné prvky data obsažená ve struktuře.

Objekt je brán jako jednotka pro ukládání dat variabilní délka, volal soubor.

Soubor je pojmenovaná sekvence bajtů libovolné délky. Vzhledem k tomu, že soubor může mít nulovou délku, vytvoření souboru vyžaduje jeho pojmenování a registraci v systému souborů – to je jedna z funkcí OS.

Data patřící ke stejnému typu jsou obvykle uložena v samostatném souboru. V tomto případě rozhoduje datový typ typ souboru.

Protože v definici souboru není žádné omezení velikosti, lze si představit soubor s 0 bajty (prázdný soubor), a soubor mající libovolný počet bajtů.



V definici souboru zvláštní pozornost dáno jménu. Ve skutečnosti nese data adresy, bez kterých se data uložená v souboru nestanou informací, protože neexistuje způsob, jak se k nim dostat. Kromě funkcí souvisejících s adresováním může název souboru ukládat také informace o typu dat v něm obsažených. Pro automatickými prostředky práce s daty je to důležité, protože podle názvu souboru (nebo spíše podle jeho přípony) dokážou automaticky určit adekvátní metodu pro extrakci informací ze souboru.

Podle metod pojmenování souborů rozlišují „ krátký"(8 znaků je přiděleno pro název souboru a 3 znaky pro jeho příponu) a " dlouho» název (až 256 znaků). Název souboru a jeho přípona jsou odděleny tečkou. Přípona souboru je volitelný parametr a může chybět.

V OS MS DOS jméno (ne více než 8 znaků) a přípona (ne více než 3 znaky) se mohou skládat z velkých a malých písmen latinská písmena, čísla a symboly:

- _ $ # & @ ! % () { } " ~ ^

Je třeba si uvědomit, že pro řádky OS MS DOS:

Mezi názvem a příponou je umístěna tečka, která není součástí názvu ani přípony;

Název souboru lze v každém případě zadat, protože pro systém jsou všechna písmena malá;

Znaky nepoužívané v názvech souborů

* = + \ ; : , . < > / ?

Názvy zařízení nelze použít jako názvy souborů:

AUX - název přídavné zařízení vstup-výstup;

CON - název klávesnice pro vstup nebo zobrazení pro výstup;

LPT1 ... LPT3 - názvy paralelních portů;

COM1 ... COM3 - názvy sériových portů;

PRN - název tiskového zařízení;

NUL je název fiktivního zařízení, které emuluje výstupní operace bez skutečného výstupu.

S příchodem OS Windows 95 koncept" dlouho"jméno. Tento název může mít až 256 znaků, což stačí k vytvoření smysluplných názvů souborů. " Dlouho"Jméno může obsahovat libovolné znaky kromě devíti speciálních:

\ / : * ? " < > |

V názvu jsou povoleny mezery a více teček. Přípona názvu zahrnuje všechny znaky za poslední tečkou.

Spolu s " dlouho» Název OS Windows 95/98/Me/2000/XP jsou také vytvořeny krátký název souboru - je nutné umět s tímto souborem pracovat na pracovních stanicích se zastaralými operačními systémy.

Použití" dlouho» názvy souborů v nejnovějším OS Windows má číslo funkce.

1. Pokud " dlouho"Název souboru obsahuje mezery, v servisních operacích pak musí být uzavřen v uvozovkách. Doporučuje se nepoužívat mezery, ale nahradit je podtržítky.

2. Soubory s dlouhými názvy není vhodné ukládat do kořenové složky disku (na nejvyšší úrovni hierarchické struktury souborů) - na rozdíl od jiných složek je v ní omezen počet úložných jednotek (čím delší názvy, tím méně souborů lze umístit do kořenové složky).

3. Kromě omezení délky názvu souboru (256 znaků) existuje mnohem přísnější omezení délky úplný název souboru(to zahrnuje přístupovou cestu k souboru, počínaje od vrcholu hierarchické struktury). Celé jméno nesmí být delší než 260 znaků.

4. Je povoleno používat znaky libovolných abeced včetně ruské, ale pokud se dokument připravuje k přenosu, je nutné se zákazníkem dohodnout možnost reprodukce souborů s takovými názvy na jeho zařízení.

5. Velká písmena a malá písmena OS se neliší. Jména Letter.txt A dopis. txt odpovídají stejnému souboru.

6. Programátoři se již dlouho naučili používat přípony názvů souborů k tomu, aby operačnímu systému, spouštěnému programu nebo uživateli předali informace o tom, jaký typ dat soubor obsahuje a ve kterém formátu je zapsán. Systémové aplikace nabízejí výběr pouze hlavní části jména a určení typu souboru a automaticky se přiřadí příslušná přípona názvu.

Podle přípony jsou všechny soubory rozděleny na dva velké skupiny: spustitelný A nespustitelný .

Spustitelné soubory - jedná se o soubory, které lze spustit samostatně, tzn. k jejich spuštění nevyžadují žádné speciální programy. Mají následující rozšíření:

· exe- soubor připraven k provedení ( winrar.exe; winword.exe);

· sto - soubor operačního systému ( command.com);

· sys- soubor operačního systému ( io.sys) - obvykle se jedná o ovladač externího zařízení;

· netopýr- dávkový soubor operační systém MS DOS (autoexec.bat).

Nespustitelné soubory vyžadují ke spuštění instalaci speciálních programů. Chcete-li tedy například zobrazit textový dokument, musíte mít nějaký textový editor. Podle přípony nespustitelného souboru můžete posoudit typ dat uložených v tomto souboru. Zde jsou některé standardní rozšíření a názvy programů určených pro práci se soubory uvedených přípon:

A.S.M.- text programu v jazyce assembler;

AVI, MPEG, MPG, WMV atd. - různé formáty video souborů, pro prohlížení můžete použít např. Windows Přehrávač médií - datový typ: obrázek;

BAK - stará verze soubor;

BAS- text programu v jazyce ZÁKLADNÍ;

BMP- dokument vytvořený v grafický editor, například Malovat- datový typ: obrázek;

C- text programu v jazyce Si;

CDR CorelDraw- datový typ: obrázek;

CPP- text programu v jazyce C++;

dbf- databázový soubor vytvořený např. v DBMS FoxPro;

DOC- dokument vytvořený v textový procesor Microsoft Word - datový typ: text;

DWG, DXF- grafické soubory vytvořené v AutoCAD;

HTML- dokument určený ke zveřejnění na internetu;

LIB- knihovna (obvykle objektové moduly);

MDB- databázový soubor vytvořený v DBMS Microsoft Access;

MP3, MID, WMA, WAV– různé formáty zvukové soubory- typ dat: zvuk;

O.B.J.- objektový modul;

PAS- text programu v jazyce Pascal;

PDF - PDF-dokument vytvořený a určený k prohlížení v programu Adobe Reader;

PPT- prezentační soubor vytvořený v Microsoft PowerPoint;

PSD- grafický soubor vytvořený v GPU Adobe Photoshop;

RAR WinRar;

RTF- dokument vytvořený v textovém editoru WordPad;

TIF, GIF, JPG- různé formáty grafických souborů;

TMP- dočasný soubor;

TXT - textový soubor, například vytvořené v programu Notebook;

XLS - e-kniha, vytvořený v stolní procesor Microsoft Excel- datový typ: znaky (text nebo čísla);

ZIP- archivní soubor vytvořený programem archivátor WinZip.

Kromě názvu a přípony názvu souboru ukládá operační systém pro každý soubor datum jeho vytvoření (změny) a několik hodnot příznaků tzv. atributy souboru. Atributy jsou další možnosti, definující vlastnosti souboru. Operační systém vám je umožňuje ovládat a měnit. Stav atributů se bere v úvahu při provádění automatických operací se soubory.

Existují čtyři hlavní atributy:

· Pouze pro čtení(Pouze pro čtení);

· Skrytý(Skrytý);

· Systém(Systém);

· archivní(Archiv).

atribut" Pouze pro čtení" omezuje možnost práce se souborem. Nastavení znamená, že soubor není určen k úpravě.

atribut" Skrytý" signalizuje operačnímu systému, že soubor není by se mělo zobrazit na obrazovce při provádění operací se soubory. Jedná se o ochranné opatření proti náhodnému (úmyslnému nebo neúmyslnému) poškození souboru.

Atribut " Systém" soubory, které mají důležité funkce pro samotný provoz operačního systému. Jeho charakteristický rys Problém je, že to nelze změnit pomocí operačního systému. Zpravidla většina souborů, které mají příponu " Systém", mají také atribut „ Skrytý".

atribut" archivní" používané v minulosti ke spouštění zálohovacích programů. Jakýkoli program, který upravuje soubor, měl tento atribut automaticky nastavit a zálohovací nástroj jej měl resetovat. Příštímu zálohování tedy podléhaly pouze soubory, pro které byl tento atribut nastaven. Moderní programy zálohy používají jiné prostředky k určení, zda se soubor změnil, a tento atribut se nebere v úvahu a ruční změna pomocí operačního systému nemá praktický význam.

Úložiště souborů je organizováno v hierarchické struktuře, která se v tomto případě nazývá struktura souboru(obr. 1) .

Rýže. 1. Hierarchická struktura disku

Struktura souboru - hierarchická struktura, ve které operační systém zobrazuje soubory a adresáře (složky).

Slouží jako horní část konstrukce jméno dopravce, kam se ukládají soubory. Dále jsou soubory seskupeny do adresáře (složky), v rámci kterého lze vytvořit vnořené adresáře(obr. 1) .

Jména externí média informace. Disky, na kterých jsou v počítači uloženy informace, mají svá jména – každý disk je pojmenován písmenem latinské abecedy, za nímž následuje dvojtečka. Takže disketám jsou vždy přiřazena písmena A: A V:. Logické jednotky pevného disku jsou pojmenovány začínající písmenem S:. Všechny názvy logických jednotek jsou následovány názvy jednotek CD. Například nainstalované: disketová jednotka, pevný disk rozdělený na 3 logické jednotky a jednotka CD. Identifikujte písmena všech paměťových médií. A:- disketová mechanika; S:, D:, E: - logické disky pevný disk; F:- CD mechanika.

Katalog (složku) - místo na disku (speciální systémový soubor), která ukládá servisní informace o souborech (název, přípona, datum vytvoření, velikost atd.). Adresáře nižších úrovní jsou vnořeny do adresářů vyšších úrovní a jsou pro ně určeny vnořený. Katalog nejvyšší úroveň(nadadresář) ve vztahu k adresářům nižší úrovně se nazývá rodič. Nejvyšší úroveň vnoření hierarchické struktury je kořenový adresář disk (obr. 1). Zavolá se adresář, se kterým uživatel aktuálně pracuje proud.

Pravidla pro pojmenování adresáře se neliší od pravidel pro pojmenování souboru, i když není zvykem uvádět přípony jmen pro adresáře. Při zápisu přístupové cesty k souboru prostřednictvím systému podadresářů jsou všechny přechodné adresáře odděleny specifickým symbolem. Mnoho operačních systémů používá jako tento znak "\" (zpětné lomítko).

Požadavek na unikátní název souboru je zřejmý – bez něj nelze zaručit jednoznačný přístup k datům. V prostředcích výpočetní technika požadavek jedinečnosti jména je zajištěn automaticky - uživatel ani automatika nemohou vytvořit soubor s názvem shodným s existujícím.

Když je použit soubor, který není v aktuálním adresáři, musí program přistupující k souboru uvést, kde přesně se soubor nachází. To se provádí zadáním cesty k souboru.

Cesta k souboru je název média (disku) a sekvence názvů adresářů oddělených znakem „\“ v OS Windows (znak „/“ se používá v OS UNIX). Tato cesta určuje cestu do adresáře, ve kterém se nachází požadovaný soubor.

Chcete-li zadat cestu k souboru, použijte dvě různé metody. V prvním případě je dán každý soubor absolutní název cesty ( celé jméno soubor), skládající se z názvů všech adresářů od kořenového po ten, který obsahuje soubor, a názvu samotného souboru. Například cesta C:\Abby\Doc\otchet.doc znamená, že kořenový adresář disku S: obsahuje adresář Abby, který zase obsahuje podadresář Doc kde se soubor nachází zpráva.doc. Absolutní jména cesty vždy začínají názvem média a kořenovým adresářem a jsou jedinečné. Platí také relativní název cesty. Používá se společně s konceptem aktuální adresář. Uživatel může určit jeden z adresářů jako aktuální pracovní adresář. V tomto případě jsou všechny názvy cest, které nezačínají oddělovacím znakem, považovány za relativní a počítají se vzhledem k aktuálnímu adresáři. Pokud je například aktuální adresář Taxíkář, pak do souboru s absolutní cestou Taxíkář\ lze kontaktovat jako Doc\otchet.doc.

Souborové systémy. Každý soubor na disku má svou vlastní adresu. Abyste pochopili princip přístupu k informacím uloženým v souboru, musíte vědět, jak jsou data zaznamenávána na paměťová média.

Všechny moderní diskové operační systémy umožňují vytvoření souborového systému určeného k ukládání dat na disky a poskytování přístupu k nim. Princip organizace souborového systému je tabelární. Povrch pevný disk je považována za trojrozměrnou matici, jejíž rozměry jsou čísla povrch, válec A sektory.

Před použitím je disk označen na stopy a sektory ( formátovaný). Z hardwarového hlediska je označování proces záznamu informací o službě na médium, které označuje konec a začátek každého sektoru.

Sektory jsou bloky, ve kterých jsou uložena data.Číslované od jedničky. Kromě informací o uživateli obsahují sektory informace o službách, například jejich vlastní číslo.

Stopa - soustředný kruh, po kterém se pohybují čtecí a zapisovací hlavy při pohybu nebo vyhledávání dat. Skladby jsou číslovány od nuly. Nejvzdálenější stopa na disku je očíslována nulou.

Typická velikost sektoru je 512 bajtů. Na jedné straně je 80 tratí. Každá stopa obsahuje 18 sektorů.

Pod Válec je chápán jako soubor všech drah patřících různým povrchům a umístěných ve stejné vzdálenosti od osy otáčení.. Fyzická struktura datového úložiště je znázorněna na obrázku 2.

Rýže. 2. Fyzická struktura úložiště informací

Data o tom, kde je na disku zaznamenán konkrétní soubor, jsou uložena v systémové oblasti disku ve speciálním režimu alokační tabulky souborů(TUK- tabulky). Od porušení TUK-tabulka vede k nemožnosti použít data zaznamenaná na disku; speciální požadavky spolehlivost a existuje ve dvou kopiích, jejichž identita je pravidelně sledována nástroji operačního systému.

Nejmenší fyzickou jednotkou úložiště informací je sektor. Kvůli velikosti TUK- tabulka je omezena, pak u disků, jejichž velikost přesahuje 32 MB, není možné zajistit adresování na každý jednotlivý sektor. V tomto ohledu jsou skupiny sektorů podmíněně spojeny do shluků. Cluster je nejmenší jednotka adresových informací. Velikost clusteru na rozdíl od velikosti sektoru není pevná a závisí na kapacitě disku.

Jak již bylo zmíněno dříve, informace na discích se zapisují do sektorů pevné délky a každý sektor a umístění každého fyzického záznamu (sektoru) na disku je jednoznačně identifikováno třemi čísly: čísla povrchu disku, válec A sektory na trati. A diskový řadič pracuje s diskem přesně za těchto podmínek. A uživatel nechce používat sektory, válce a povrchy, ale soubory a adresáře. Proto je při provádění operací se soubory a adresáři na discích nějak nutné převést to na činnosti srozumitelné pro řadič: čtení a zápis určitých sektorů disku. A k tomu je nutné stanovit pravidla, podle kterých se tento překlad provádí, to znamená především určit, jak by měly být informace uloženy a organizovány na discích. Soubor těchto pravidel se nazývá souborový systém.

Systém souborů- je soubor konvencí, které definují organizaci dat na paměťových médiích. Přítomnost těchto konvencí umožňuje operačnímu systému, dalším programům a uživatelům pracovat se soubory a adresáři, a to nejen se sekcemi (sektory) disků. Souborový systém definuje:

· jak jsou soubory a adresáře uloženy na disku;

· jaké informace o souborech a adresářích jsou uloženy;

· jak můžete zjistit, které části disku jsou volné a které ne;

· formát adresářů a dalších servisních informací na disku.

Chcete-li používat disky zapsané (rozdělené na oddíly) pomocí nějakého souborového systému, operačního systému popř speciální program musí podporovat tento souborový systém.

Nejběžnější souborový systém IBM PC-kompatibilní počítače, byl zaveden již na počátku 80. let v operačních systémech MS DOS 1.0 a 2.0. Tento souborový systém je poměrně primitivní, protože byl vytvořen pro ukládání dat na diskety. Tento souborový systém se obvykle nazývá TUK, protože většina důležitá struktura data v něm jsou tabulka umístění souborů na disku, v angličtině - tabulka alokace souborů, zkrácené - TUK. Tato tabulka obsahuje informace o kterých oblastech (shluky) disky jsou zdarma a o řetězcích clusterů, které tvoří soubory a adresáře.

Na souborovém systému TUK Názvy souborů a adresářů nesmí být delší než 8 znaků plus tři znaky v příponě názvu. To vede ke značným ztrátám (až 20 %) místa na disku v důsledku velké velikosti clustery na vysokokapacitních discích. To je způsobeno tím, že na konci posledního clusteru souboru zůstává volné místo, v průměru se rovná polovině shluku. A na velkých discích velikost clusterů TUK může dosáhnout 32 kB . Tedy na disku s kapacitou
2 GB s 20 000 soubory ztratí 320 MB, tedy asi 16 %. Nakonec systém souborů TUK nízký výkon, zejména pro velké disky, nevhodný pro multitasking (všechny operace vyžadují přístup k alokační tabulce souborů, a proto nelze spustit další, dokud není dokončena jedna operace).

Během vývoje Windows 95 firma Microsoft rozhodl nezavést nový souborový systém, ale opravit stávající souborový systém TUK, což vám umožní přiřadit soubory a adresáře dlouho jména. Tento souborový systém se stal známým jako TUK 32. Přijato v Windows 95 Dobrá věc na tomto přístupu je, že vám umožňuje používat staré disky se systémem souborů TUK- prostě se na ně začnou psát dlouhá jména. Toto řešení je však stále velmi umělé a mnoho programů slouží k opravě souborového systému disku, „kompresi“ disků, zálohování atd. - může vést ke ztrátě dlouhých jmen na disku. TUK 32 Podporuje menší velikosti clusterů, což umožňuje efektivnější využití místa na disku.

Při vývoji operačního systému Windows NT byl vytvořen nový souborový systém - NTFS. Byl zaměřen na velké disky obsahující mnoho souborů a přijali významná opatření k zajištění efektivního ukládání dat a řízení přístupu. Tento souborový systém podporuje dlouhé názvy souborů. Na logických discích s kapacitou 1-2 GB je souborový systém NTFS umožňuje uložit v průměru o 10-15 % více informací než TUK. A přístup k souborům v něm je znatelně rychlejší, zvláště v multitaskingovém prostředí.

Při vytváření souborového systému NTFS Formátovací program vytvoří soubor Hlavní tabulka souborů(MTF) a další oblasti pro ukládání metadat. Používají se metadata NTFS implementovat strukturu souborů. Prvních 16 příspěvků v MTF rezervovaná sama NTFS. Umístění souborů metadat je zaznamenáno v spouštěcím sektoru disku. Pokud první záznam v MTF poškozený, NTFS přečte druhý záznam, aby našel kopii prvního. Úplná kopie Spouštěcí sektor je umístěn na konci svazku. V MTF jsou uložena metadata, jako je kopie prvních čtyř záznamů (zaručuje přístup k MTF v případě poškození prvního sektoru). MTF obsahuje informace o svazku - štítek a číslo verze. V MTF je tam tabulka jmen a popisů atributů, kořenový adresář atd. Zbývající řádky MTF obsahovat položky pro každý soubor a adresář umístěný na tento objem. Vývojáři NTFS, aniž bychom zapomněli na efektivitu, snažili jsme se také zajistit spolehlivost souborového systému a obnovitelnost dat v případě výpadků. K tomu zejména NTFS vše kriticky duplikuje důležité informace a zajišťuje, že všechny změny na discích jsou zaznamenány do speciálního registračního souboru a pro každou změnu je také zapamatován způsob jejího zrušení. V důsledku toho téměř při jakémkoli selhání NTFS automaticky obnovena. NTFS také (na rozdíl od TUK) umí pracovat s logickými jednotkami a soubory většími než 2 GB - maximální velikost logických jednotek a souborů je 4x10 18 bajtů.

Srovnávací charakteristiky souborové systémy jsou uvedeny v tabulce. 1. Pokud souborový systém na disku není podporován daným operačním systémem, pak budou všechny informace na tomto disku nepřístupné (při práci v tomto operačním systému samozřejmě). U těchto logických jednotek nemusí být přiřazeno vůbec žádné písmeno (to znamená, že k jednotce nelze přistupovat), nebo jakýkoli přístup k jednotce vygeneruje chybovou zprávu.

Pro disky CD byl vyvinut speciální souborový systém ( CD-ROM). To se ukázalo jako nezbytné, protože fyzická struktura samotných CD není stejná jako struktura CD pevné disky nebo diskety: v nich se informace nezapisují do kruhových stop, ale do jediné spirálovité stopy (jako audio CD). Tento souborový systém se nazývá CDFS.

Tabulka 1

Srovnávací charakteristiky souborových systémů

NTFS TUK 32 TUK
Podporované operační systémy Windows NT s aktualizací Service Pack 4, Windows 2000, Windows XP MS-DOS, Windows 95 OSR2, Windows 98, Windows Millennium Edition, Windows NT, Windows 2000, Windows XP
Možné velikosti logických jednotek Doporučeno minimální velikost logický disk (objem) je přibližně 10 MB. Velikost svazku větší než 2 TB je povolena. Nelze použít pro diskety Logický disk (svazek) s kapacitou od 512 MB do 2 TB. Lze použít pro diskety
Logický disk (objem) až 4 GB. Lze použít pro diskety Možné velikosti uložených souborů Maximální velikost souboru je omezena pouze velikostí svazku Maximální velikost souboru je 4 GB

Maximální velikost souboru je 2 GB

      Generál. V teorii informatiky jsou definovány následující tři hlavní typy datových struktur: lineární, tabulkové, hierarchické. Ukázka knihy: sekvence listů - lineární struktura. Části, oddíly, kapitoly, odstavce - hierarchie. Obsah – tabulka – spojuje – hierarchické s lineárním. Strukturovaná data mají nový atribut - Adresa. Tak: Lineární struktury (seznamy, vektory). Pravidelné seznamy. Adresa každého prvku je jednoznačně určena jeho číslem. Pokud mají všechny prvky seznamu– datový vektor.

      Tabulkové struktury (tabulky, matice). Rozdíl mezi tabulkou a seznamem - každý prvek - je určen adresou, která se skládá nikoli z jednoho, ale z několika parametrů. Nejběžnějším příkladem je matice - adresa - dva parametry - číslo řádku a číslo sloupce. Vícerozměrné tabulky.

      Hierarchické struktury. Používá se k prezentaci nepravidelných dat. Adresa je určena trasou - z vrcholu stromu. Souborový systém - počítač. (Trasa může přesahovat – množství dat, dichotomie – vždy jsou dvě větve – levá a pravá).

Uspořádání datových struktur. Hlavní metodou je třídění. ! Při přidávání nového prvku do objednané struktury je možné změnit adresu stávajících. U hierarchických struktur – indexování – má každý prvek jedinečné číslo – které se pak používá při řazení a vyhledávání.

    Základní prvky souborového systému

Historicky prvním krokem v ukládání a správě dat bylo použití systémů pro správu souborů.

Soubor je pojmenovaná oblast externí paměti, do které lze zapisovat a z ní číst. Tři parametry:

    sekvence libovolného počtu bajtů,

    jedinečné vlastní jméno (ve skutečnosti adresa).

    data stejného typu – typ souboru.

Pravidla pro pojmenování souborů, způsob přístupu k datům uloženým v souboru a struktura těchto dat závisí na konkrétním systému správy souborů a případně na typu souboru.

Za prvé, v moderní chápání, pokročilý souborový systém byl vyvinut společností IBM pro svou řadu 360 (1965-1966). Ale v současných systémech se prakticky nepoužívá. Použité datové struktury seznamu (EC-svazek, sekce, soubor).

Většina z vás zná souborové systémy moderních operačních systémů. Jedná se především o MS DOS, Windows a některé s konstrukcí souborového systému pro různé možnosti UNIX.

Struktura souboru. Soubor představuje kolekci datových bloků umístěných na externím médiu. Pro výměnu s magnetickým diskem na úrovni hardwaru je třeba zadat číslo válce, číslo povrchu, číslo bloku na odpovídající stopě a počet bajtů, které je třeba zapsat nebo přečíst od začátku tohoto bloku. Všechny souborové systémy proto explicitně nebo implicitně alokují nějakou základní úroveň, která zajišťuje práci se soubory, které představují sadu přímo adresovatelných bloků v adresním prostoru.

Pojmenování souborů. Všechny moderní systémy souborů podporují víceúrovňové pojmenování souborů udržováním v externí paměti další soubory se speciální strukturou - adresáře. Každý adresář obsahuje názvy adresářů a/nebo souborů obsažených v tomto adresáři. Úplný název souboru se tedy skládá ze seznamu názvů adresářů plus názvu souboru v adresáři, který soubor bezprostředně obsahuje. Rozdíl mezi tím, jak jsou soubory pojmenovány v různých souborových systémech, spočívá v tom, kde začíná řetězec jmen. (Unix, DOS-Windows)

Ochrana souborů. Systémy správy souborů musí poskytovat oprávnění pro přístup k souborům. Obecně se postupuje tak, že ve vztahu ke každému registrovanému uživateli daného počítačového systému jsou u každého existujícího souboru uvedeny akce, které jsou pro tohoto uživatele povolené nebo zakázané. Byly pokusy tento přístup implementovat v plném rozsahu. To však způsobilo příliš mnoho režie jak při ukládání nadbytečných informací, tak při používání těchto informací ke kontrole způsobilosti přístupu. Proto ve většině moderní systémy Správa souborů používá přístup k ochraně souborů poprvé implementovaný v systému UNIX (1974). V tomto systému je každému registrovanému uživateli přiřazena dvojice celočíselných identifikátorů: identifikátor skupiny, do které tento uživatel patří, a jeho vlastní identifikátor ve skupině. V souladu s tím je pro každý soubor uložen úplný identifikátor uživatele, který tento soubor vytvořil, a je uvedeno, jaké akce může se souborem provádět on sám, jaké akce se souborem jsou dostupné ostatním uživatelům stejné skupiny a jaké uživatelé jiných skupin mohou se souborem pracovat. Tyto informace jsou při kontrole velmi kompaktní; velký počet akce a tento způsob řízení přístupu je ve většině případů uspokojivý.

Režim přístupu pro více uživatelů. Pokud operační systém podporuje režim pro více uživatelů, je docela možné, že se dva nebo více uživatelů současně pokusí pracovat se stejným souborem. Pokud budou všichni tito uživatelé soubor pouze číst, nestane se nic špatného. Pokud ale alespoň jeden z nich změní soubor, je pro správnou funkci této skupiny nutná vzájemná synchronizace. Historicky souborové systémy zvolily následující přístup. V operaci otevření souboru (první a povinná operace, kterou by měla začít relace práce se souborem), byl kromě jiných parametrů uveden provozní režim (čtení nebo změna). + existují speciální postupy pro synchronizaci uživatelských akcí. Záznamy nepovoleny!

    Žurnálování v souborových systémech. Obecné zásady.

Spuštění kontroly systému (fsck) na velkých souborových systémech může trvat dlouho, což je vzhledem k dnešním vysokorychlostním systémům nešťastné. Důvodem, proč neexistuje integrita v systému souborů, může být nesprávné odpojení, například, že se na disk v době ukončení zapisovalo. Aplikace mohou aktualizovat data obsažená v souborech a systém může aktualizovat metadata souborového systému, což jsou „data o datech souborového systému“, jinými slovy informace o tom, které bloky jsou přidruženy ke kterým souborům, které soubory jsou umístěny ve kterých adresářích, a podobně. Chyby (nedostatek integrity) v datových souborech jsou špatné, ale mnohem horší jsou chyby v metadatech souborového systému, které mohou vést ke ztrátě souborů a dalším vážným problémům.

Aby se minimalizovaly problémy s integritou a minimalizovala se doba restartování systému, žurnálovaný souborový systém udržuje seznam změn, které provede v systému souborů, než změny skutečně zapíše. Tyto záznamy jsou uloženy v samostatné části souborového systému nazývané „žurnál“ nebo „protokol“. Jakmile jsou tyto záznamy žurnálu (protokolu) bezpečně zapsány, systém souborů žurnálování provede tyto změny v systému souborů a poté tyto záznamy vymaže z „protokolu“ (protokolu). Záznamy protokolu jsou organizovány do sad souvisejících změn systému souborů, podobně jako jsou změny přidané do databáze organizovány do transakcí.

Žurnálovaný souborový systém zvyšuje pravděpodobnost integrity, protože záznamy souboru protokolu jsou prováděny před provedením změn v systému souborů a protože systém souborů uchovává tyto záznamy, dokud nejsou plně a bezpečně aplikovány na systém souborů. Když restartujete počítač, který používá žurnálovaný systém souborů, může program mount zajistit integritu systému souborů tím, že jednoduše zkontroluje v souboru protokolu změny, které byly očekávány, ale nebyly provedeny, a zapíše je do systému souborů. Ve většině případů systém nemusí kontrolovat integritu souborového systému, což znamená, že počítač používající žurnálovaný souborový systém bude k dispozici pro použití téměř okamžitě po restartu. V souladu s tím je výrazně snížena šance na ztrátu dat v důsledku problémů v systému souborů.

Klasickou formou žurnálovaného souborového systému je ukládat změny v metadatech souborového systému do žurnálu (logu) a ukládat změny všech dat souborového systému, včetně změn v souborech samotných.

    Soubor systém MS-DOS(TUK)

Souborový systém MS-DOS je stromový souborový systém pro malé disky a jednoduché struktury adresáře, v jejichž kořenu je kořenový adresář, a listy jsou soubory a další adresáře, případně prázdné. Soubory spravované tímto systémem souborů jsou alokovány v clusterech, jejichž velikost se může pohybovat od 4 KB do 64 KB v násobcích 4, bez použití vlastnosti sousedství ve smíšené metodě alokace. disková paměť. Na obrázku jsou například tři soubory. Soubor1.txt je poměrně velký: obsahuje tři další přítel za dalším blokem. Malý soubor File3.txt využívá prostor pouze jednoho přiděleného bloku. Třetí soubor je File2.txt. je velký fragmentovaný soubor. V každém případě vstupní bod ukazuje na první alokovatelný blok vlastněný souborem. Pokud soubor používá více alokovaných bloků, předchozí blok ukazuje na následující v řetězci. Hodnota FFF je označena koncem sekvence.

FAT oddíl disku

Pro efektivní přístup k souborům použijte alokační tabulka souborů– File Allocation Table, která se nachází na začátku oddílu (nebo logické jednotky). Název tohoto souborového systému – FAT – pochází z názvu alokační tabulky. Pro ochranu oddílu jsou na něm uloženy dvě kopie FAT pro případ, že by se jedna z nich poškodila. Kromě toho musí být alokační tabulky souborů umístěny na přísně pevných adresách, aby byly správně umístěny soubory potřebné ke spuštění systému.

Alokační tabulka souborů se skládá z 16bitových prvků a obsahuje následující informace o každém clusteru logických disků:

    cluster se nepoužívá;

    cluster je používán souborem;

    špatný shluk;

    poslední souborový cluster;.

Protože každému clusteru musí být přiřazeno jedinečné 16bitové číslo, podporuje FAT maximálně 216 nebo 65 536 clusterů na jednom logickém disku (a také si některé clustery vyhrazuje pro své vlastní potřeby). Dostaneme tak maximální velikost disku obsluhovaného MS-DOSem na 4 GB. Velikost clusteru lze zvětšit nebo zmenšit v závislosti na velikosti disku. Když však velikost disku překročí určitou hodnotu, clustery se příliš zvětší, což vede k vnitřní defragmentaci disku. Kromě informací o souborech může alokační tabulka souborů obsahovat také informace o adresářích. To považuje adresáře za speciální soubory s 32bajtovými položkami pro každý soubor obsažený v tomto adresáři. Kořenový adresář má pevnou velikost 512 položek pro pevný disk a pro diskety je tato velikost určena velikostí diskety. Kromě toho je kořenový adresář umístěn bezprostředně po druhé kopii FAT, protože obsahuje soubory potřebné pro zavaděč systému MS-DOS.

Při hledání souboru na disku je systém MS-DOS nucen prohledávat adresářovou strukturu, aby jej našel. Chcete-li například spustit spustitelný soubor, C:\Program\NC4\nc.exe najde spustitelný soubor takto:

    čte kořenový adresář jednotky C: a hledá v něm adresář Program;

    čte počáteční program clusteru a hledá v tomto adresáři záznam o podadresáři NC4;

    čte počáteční cluster podadresáře NC4 a hledá v něm položku pro soubor nc.exe;

    přečte všechny clustery souboru nc.exe.

Tato metoda vyhledávání není nejrychlejší mezi současnými systémy souborů. Navíc, čím větší hloubka adresářů, tím pomalejší bude vyhledávání. Pro urychlení operace vyhledávání byste měli udržovat vyváženou strukturu souborů.

Výhody FAT

    Je to nejlepší volba pro logické jednotky malá velikost, protože začíná s minimální režií. Na discích, jejichž velikost nepřesahuje 500 MB, pracuje s přijatelným výkonem.

Nevýhody FAT

    Vzhledem k tomu, že velikost položky souboru je omezena na 32 bajtů a informace musí zahrnovat velikost souboru, datum, atributy atd., velikost názvu souboru je také omezena a nesmí překročit 8+3 znaků pro každý soubor. Použití takzvaných krátkých názvů souborů činí FAT méně atraktivním pro použití než jiné systémy souborů.

    Používání FAT na discích větších než 500 MB je iracionální kvůli defragmentaci disku.

    Systém souborů FAT nemá žádné bezpečnostní funkce a podporuje minimální možnosti zabezpečení informací.

    Rychlost operací ve FAT je nepřímo úměrná hloubce vnoření adresářů a místu na disku.

    Souborový systém UNIX – systémy (ext3)

Moderní, výkonný a bezplatný operační systém Linux poskytuje širokou oblast pro vývoj moderních systémů a zakázkového softwaru. Některé z nejzajímavějších novinek v nedávných linuxových jádrech jsou nové, vysoce výkonné technologie pro správu ukládání, umístění a aktualizace dat na disku. Jedním z nejzajímavějších mechanismů je souborový systém ext3, který je integrován do linuxového jádra od verze 2.4.16 a je již standardně dostupný v Linuxové distribuce od firem Červený klobouk a SuSE.

Souborový systém ext3 je žurnálovací souborový systém, který je 100% kompatibilní se všemi nástroji určenými k vytváření, správě a jemné doladění souborový systém ext2, který se používá v několika systémech Linux posledních letech. Než podrobně popíšeme rozdíly mezi souborovými systémy ext2 a ext3, ujasněme si terminologii souborových systémů a ukládání souborů.

Na systémové úrovni všechna data v počítači existují jako bloky dat na nějakém úložném zařízení, organizované pomocí speciálních datových struktur do oddílů (logických sad na úložném zařízení), které jsou zase organizovány do souborů, adresářů a nepoužívané (volné) plocha.

Souborové systémy jsou vytvářeny na diskových oddílech, aby se zjednodušilo ukládání a organizace dat ve formě souborů a adresářů. Linux, stejně jako systém Unix, používá hierarchický souborový systém složený ze souborů a adresářů, které obsahují buď soubory, nebo adresáře. Soubory a adresáře v souborovém systému Linux jsou uživateli zpřístupněny jejich připojením (příkaz „mount“), což je obvykle součástí procesu spouštění systému. Seznam systémů souborů dostupných k použití je uložen v souboru /etc/fstab (FileSystem TABle). Seznam souborových systémů, které nejsou aktuálně připojeny systémem, je uložen v souboru /etc/mtab (Mount TABle).

Když je souborový systém připojen během bootování, vymaže se bit v záhlaví („čistý bit“), což znamená, že se souborový systém používá a že datové struktury používané k řízení umístění a organizace souborů a adresářů v rámci tohoto souborového systému podléhají změnám.

Systém souborů je považován za úplný, pokud jsou všechny datové bloky v něm buď používány, nebo jsou volné; každý alokovaný datový blok je obsazen pouze jedním souborem nebo adresářem; všechny soubory a adresáře jsou přístupné po zpracování řady dalších adresářů v systému souborů. Když je linuxový systém úmyslně vypnut pomocí příkazů operátora, všechny souborové systémy jsou odpojeny. Odpojení systému souborů během vypínání nastaví v hlavičce systému souborů „čistý bit“, což znamená, že systém souborů byl správně odpojen a lze jej tedy považovat za nedotčený.

Roky ladění a přepracování souborového systému a používání vylepšených algoritmů pro zápis dat na disk výrazně snížilo poškození dat způsobené aplikacemi nebo samotným linuxovým jádrem, ale eliminovalo poškození a ztrátu dat v důsledku výpadků napájení a dalších systémové problémy je stále náročný úkol. V případě havárie nebo prostého vypnutí linuxového systému bez použití standardních vypínacích procedur se „čistý bit“ v hlavičce souborového systému nenastaví. Při příštím spuštění systému proces připojení zjistí, že systém není označen jako „čistý“ a fyzicky zkontroluje jeho integritu pomocí nástroje pro kontrolu systému souborů Linux/Unix „fsck“ (File System CheckK).

Pro Linux je k dispozici několik žurnálovacích souborových systémů. Nejznámější z nich jsou: XFS, žurnálovací souborový systém vyvinutý společností Silicon Graphics, ale nyní vydaný open source(otevřený zdroj); RaiserFS, žurnálovací souborový systém navržený speciálně pro Linux; JFS, žurnálovací souborový systém původně vyvinutý IBM, ale nyní vydaný jako open source; ext3 je souborový systém vyvinutý Dr. Stephanem Tweediem ze společnosti Red Hat a několika dalšími systémy.

Systém souborů ext3 je žurnálovaná verze systému souborů ext2 pro Linux. Souborový systém ext3 má oproti jiným žurnálovacím souborovým systémům jednu významnou výhodu – je plně kompatibilní se souborovým systémem ext2. To umožňuje používat všechny existující aplikace určené k manipulaci a přizpůsobení souborového systému ext2.

Souborový systém ext3 je podporován linuxovými jádry verze 2.4.16 a novější a musí být povolen pomocí dialogu Konfigurace souborového systému při sestavování jádra. Linuxové distribuce jako Red Hat 7.2 a SuSE 7.3 již obsahují nativní podporu pro souborový systém ext3. Souborový systém ext3 můžete použít pouze v případě, že je podpora ext3 zabudována do vašeho jádra a vy jej máte nejnovější verze nástroje "mount" a "e2fsprogs".

Ve většině případů převod systémů souborů z jednoho formátu na jiný vyžaduje zálohování všech obsažených dat, přeformátování oddílů nebo logických svazků obsahujících systém souborů a poté obnovení všech dat do tohoto systému souborů. Vzhledem ke kompatibilitě souborových systémů ext2 a ext3 není nutné všechny tyto kroky provádět a překlad lze provést pomocí jediného příkazu (spustit s právy root):

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

Například převod souborového systému ext2 umístěného na oddílu /dev/hda5 na souborový systém ext3 lze provést pomocí následujícího příkazu:

# /sbin/tune2fs -j /dev/hda5

Volba "-j" příkazu "tune2fs" vytvoří žurnál ext3 na existujícím souborovém systému ext2. Po převodu souborového systému ext2 na ext3 musíte také provést změny v položkách souboru /etc/fstab, abyste označili, že oddíl je nyní souborovým systémem "ext3". Můžete také použít automatickou detekci typu diskového oddílu (volba „auto“), ale přesto se doporučuje explicitně specifikovat typ systému souborů. Následující příklad souboru /etc/fstab ukazuje změny před a po přenosu systému souborů pro oddíl /dev/hda5:

/dev/ hda5 /opt ext2 výchozí 1 2

/dev/ hda5 /opt ext3 výchozí 1 0

Poslední pole v /etc/fstab určuje krok v procesu zavádění, během kterého by měla být kontrolována integrita souborového systému pomocí nástroje "fsck". Při použití souborového systému ext3 můžete tuto hodnotu nastavit na "0", jak je ukázáno v předchozím příkladu. To znamená, že program "fsck" nikdy nebude kontrolovat integritu souborového systému, protože integrita souborového systému je zaručena vrácením žurnálu.

Převod kořenového souborového systému na ext3 vyžaduje speciální přístup a nejlépe se provádí v režimu jednoho uživatele po vytvoření RAM disku, který podporuje souborový systém ext3.

Kromě kompatibility s nástroji souborového systému ext2 a jednoduchý překlad souborový systém ext2 až ext3, souborový systém ext3 také nabízí několik různých typů žurnálování.

Systém souborů ext3 podporuje tři různé režimy žurnálování, které lze aktivovat ze souboru /etc/fstab. Tyto režimy protokolování jsou následující:

    Žurnál/žurnál – zaznamenává všechny změny dat a metadat souborového systému. Nejpomalejší ze všech tří režimů protokolování. Tento režim minimalizuje možnost ztráty změn souborů, které provedete v systému souborů.

    Sekvenční/uspořádané – Zapisuje změny pouze do metadat souborového systému, ale zapisuje aktualizace dat souborů na disk před změnami souvisejících metadat souborového systému. Tento režim protokolování ext3 je standardně nainstalován.

    Zpětný zápis – zapisují se pouze změny metadat systému souborů na základě standardní proces zaznamenání změn do těchto souborů. Tohle je nejvíc rychlá metoda těžba dřeva.

Rozdíly mezi těmito režimy protokolování jsou jemné a hluboké. Použití režimu žurnálu vyžaduje, aby souborový systém ext3 zapsal každou změnu do systému souborů dvakrát – nejprve do žurnálu a poté do samotného systému souborů. To může snížit celkový výkon vašeho souborového systému, ale tento režim je mezi uživateli nejoblíbenější, protože minimalizuje možnost ztráty datových změn ve vašich souborech, protože změny metadat i změny dat souborů se zapisují do žurnálu ext3 a lze je opakovat při restartu systému.

Při použití „sekvenčního“ režimu se zaznamenávají pouze změny metadat souborového systému, což snižuje redundanci mezi zápisem do souborového systému a do žurnálu, a proto je tato metoda rychlejší. Ačkoli se změny dat souboru nezapisují do žurnálu, musí být provedeny předtím, než žurnálovací démon ext3 provede změny souvisejících metadat souborového systému, což může mírně snížit výkon vašeho systému. Použití této metody žurnálování zajistí, že soubory v systému souborů nebudou nikdy nesynchronizované s přidruženými metadaty systému souborů.

Metoda zpětného zápisu je rychlejší než ostatní dvě metody žurnálování, protože ukládá pouze změny metadat systému souborů a nečeká, až se přidružená data souboru změní, když je zapsán (před aktualizací věcí, jako je velikost souboru a informace o adresáři). Vzhledem k tomu, že data souboru jsou aktualizována asynchronně s ohledem na žurnálované změny metadat systému souborů, mohou soubory v systému souborů vykazovat chyby v metadatech, například chybu v označení vlastníka bloků dat (jejichž aktualizace nebyla dokončena čas, kdy byl systém restartován). To není fatální, ale může to narušit uživatelskou zkušenost.

Zadání režimu žurnálování používaného na souborovém systému ext3 se provádí v souboru /etc/fstab pro tento souborový systém. "Sekvenční" režim je výchozí, ale můžete určit různé režimy protokolování změnou voleb pro požadovaný oddíl v souboru /etc/fstab. Například záznam v /etc/fstab označující použití režimu protokolování zpětného zápisu by vypadal takto:

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

    Systém souborů Rodina Windows NT (NTFS)

      Fyzická struktura NTFS

Začněme obecnými fakty. Oddíl NTFS může mít teoreticky téměř jakoukoli velikost. Samozřejmě existuje limit, ale nebudu to ani naznačovat, protože to bude stačit na dalších sto let vývoje výpočetní techniky - při jakémkoli tempu růstu. Jak to funguje v praxi? Téměř stejné. Maximální velikost oddílu NTFS je aktuálně omezena rozměry tvrd disky. NT4 však bude mít problémy při pokusu o instalaci na oddíl, pokud je jeho část větší než 8 GB od fyzického začátku disku, ale tento problém se týká pouze spouštěcího oddílu.

Lyrická odbočka. Způsob instalace NT4.0 na prázdný disk je zcela originální a může vést k mylným úvahám o možnostech NTFS. Pokud instalačnímu programu sdělíte, že chcete disk naformátovat na NTFS, maximální velikost, kterou vám nabídne, jsou pouze 4 GB. Proč tak malý, když velikost oddílu NTFS je ve skutečnosti prakticky neomezená? Faktem je, že instalační sekce tento souborový systém prostě nezná :) Instalační program naformátuje tento disk na běžný FAT, jehož maximální velikost v NT je 4 GB (při použití ne úplně standardního obrovského 64 KB clusteru), a NT se nainstaluje na tento FAT. Ale již při prvním spuštění samotného operačního systému (ještě ve fázi instalace) je oddíl rychle převeden na NTFS; takže uživatel si během instalace nevšimne ničeho kromě podivného „omezení“ velikosti NTFS. :)

      Struktura řezu - celkový pohled

Jako každý jiný systém rozděluje NTFS veškerý užitečný prostor do clusterů – bloků dat používaných najednou. NTFS podporuje téměř libovolnou velikost clusteru – od 512 bajtů do 64 KB, přičemž za určitý standard je považován cluster o velikosti 4 KB. NTFS nemá žádné anomálie v clusterové struktuře, takže k tomuto, obecně, dost banálnímu tématu, není moc co říct.

Disk NTFS je konvenčně rozdělen na dvě části. Prvních 12 % disku je alokováno do tzv. MFT zóny – prostoru, do kterého narůstá metasoubor MFT (více níže). Do této oblasti není možné zapisovat žádná data. Zóna MFT je vždy udržována prázdná – to se děje tak, aby se nejdůležitější soubor služeb (MFT) nefragmentoval při svém růstu. Zbývajících 88 % disku je normální prostor pro ukládání souborů.

Volné místo na disku však zahrnuje veškeré fyzicky volné místo – jsou tam zahrnuty i nezaplněné kusy MFT zóny. Mechanismus použití zóny MFT je následující: když soubory již nelze zapisovat do běžného prostoru, zóna MFT se jednoduše zmenší (v aktuální verze operační systémy přesně dvakrát), čímž se uvolní místo pro zápis souborů. Když se uvolní místo v běžné oblasti MFT, oblast se může znovu rozšířit. Zároveň je možné, že v této zóně zůstanou běžné soubory: žádná anomálie zde není. No, systém se ji snažil udržet na svobodě, ale nic nefungovalo. Život jde dál... Metasoubor MFT se může stále fragmentovat, i když by to bylo nežádoucí.

      MFT a jeho struktura

Souborový systém NTFS je vynikajícím úspěchem strukturování: každý prvek systému je soubor – dokonce i servisní informace. Nejdůležitější soubor na NTFS se nazývá MFT, neboli Master File Table – obecná tabulka souborů. Nachází se v zóně MFT a je centralizovaným adresářem všech ostatních diskových souborů a paradoxně i sám sebe. MFT se dělí na záznamy pevná velikost(obvykle 1 KB) a každý záznam odpovídá souboru (v obecném smyslu slova). Prvních 16 souborů je servisního charakteru a jsou pro operační systém nepřístupné – nazývají se metasoubory, přičemž úplně prvním metasouborem je samotný MFT. Těchto prvních 16 prvků MFT je jedinou částí disku, která má pevnou pozici. Zajímavé je, že druhá kopie prvních tří záznamů je kvůli spolehlivosti (jsou velmi důležité) uložena přesně uprostřed disku. Zbytek souboru MFT může být umístěn, stejně jako jakýkoli jiný soubor, na libovolných místech na disku - jeho polohu můžete obnovit pomocí samotného souboru, "zaháknutí" na samém základě - první prvek MFT.

        Metasoubory

Prvních 16 souborů NTFS (metasouborů) je servisní povahy. Každý z nich je zodpovědný za nějaký aspekt fungování systému. Výhodou takového modulárního přístupu je jeho úžasná flexibilita – například na FAT je fyzické poškození v samotné FAT oblasti fatální pro fungování celého disku a NTFS může posouvat, dokonce fragmentovat přes disk, všechny své služby oblasti, obcházení jakýchkoli povrchových poruch - kromě prvních 16 prvků MFT.

Metasoubory jsou umístěny v kořenovém adresáři disku NTFS – začínají symbolem názvu „$“, i když je obtížné o nich získat jakékoli informace standardními prostředky. Je zvláštní, že tyto soubory mají také uvedenou velmi reálnou velikost – například kolik operační systém utratí za katalogizaci celého vašeho disku, můžete zjistit podle velikosti souboru $MFT. Následující tabulka ukazuje aktuálně používané metasoubory a jejich účel.

kopii prvních 16 záznamů MFT umístěnou uprostřed disku

soubor podpory protokolování (viz níže)

servisní informace - jmenovka svazku, verze systému souborů atd.

seznam standardních atributů souborů na svazku

kořenový adresář

mapa volného prostoru objemu

spouštěcí sektor (pokud je oddíl spouštěcí)

soubor, který zaznamenává uživatelská práva k využití místa na disku (začal fungovat pouze v NT5)

soubor - tabulka shody mezi velkými a malými písmeny v názvech souborů na aktuálním svazku. Je to potřeba hlavně proto, že v NTFS jsou názvy souborů psány v Unicode, což je 65 tisíc různých znaků, jejichž hledání velkých a malých ekvivalentů je velmi netriviální.

        Soubory a streamy

Takže systém má soubory - a nic než soubory. Co tento koncept zahrnuje na NTFS?

    Za prvé, povinným prvkem je záznam v MFT, protože, jak již bylo zmíněno dříve, všechny soubory na disku jsou zmíněny v MFT. Na tomto místě jsou uloženy všechny informace o souboru, s výjimkou samotných dat. Název souboru, velikost, umístění jednotlivých fragmentů na disku atd. Pokud jeden záznam MFT pro informaci nestačí, použije se jich několik, a ne nutně v řadě.

    Volitelný prvek - datové toky souborů. Definice „volitelného“ se může zdát divná, ale přesto zde není nic divného. Za prvé, soubor nemusí mít data – v tomto případě nezabírá volné místo na samotném disku. Za druhé, soubor nemusí být příliš velký.

Situace s daty souboru je docela zajímavá. Každý soubor na NTFS má obecně poněkud abstraktní strukturu – nemá data jako taková, ale existují proudy. Jeden z proudů má význam, který známe – souborová data. Ale většina atributů souborů jsou také proudy! Ukazuje se tedy, že soubor má pouze jednu základní entitu - číslo v MFT a vše ostatní je volitelné. Touto abstrakcí lze vytvořit docela pohodlné věci - například můžete k souboru „připojit“ další stream tím, že do něj zapíšete jakákoli data - například informace o autorovi a obsahu souboru, jak se to dělá ve Windows 2000 (záložka úplně vpravo ve vlastnostech souboru, zobrazená z Průzkumníka). Je zajímavé, že tyto dodatečné toky nejsou standardními prostředky viditelné: pozorovaná velikost souboru je pouze velikost hlavního toku, který obsahuje tradiční data. Můžete mít například soubor nulové délky, který po smazání uvolní 1 GB volného místa – jednoduše proto, že do něj nějaký mazaný program nebo technologie strčil další gigabajtový stream (alternativní data). Ve skutečnosti se však vlákna v současné době prakticky nepoužívají, takže bychom se takových situací neměli bát, i když hypoteticky jsou možné. Jen mějte na paměti, že soubor na NTFS je hlubší a globální koncept než si dokážete představit pouhým procházením adresářů disku. A konečně: název souboru může obsahovat libovolné znaky, včetně kompletní sady národních abeced, protože data jsou prezentována v Unicode - 16bitové reprezentaci, která dává 65535 různé postavy. Maximální délka názvu souboru je 255 znaků.

      Katalogy

Adresář NTFS je specifický soubor, který ukládá odkazy na jiné soubory a adresáře a vytváří tak hierarchickou strukturu dat na disku. Katalogový soubor je rozdělen do bloků, z nichž každý obsahuje název souboru, základní atributy a odkaz na prvek MFT, který již poskytuje kompletní informace o prvku katalogu. Vnitřní adresářová struktura je binární strom. Co to znamená: k nalezení souboru s daným jménem v lineárním adresáři, jako je FAT, musí operační systém projít všechny prvky adresáře, dokud nenajde ten správný. Binární strom uspořádává názvy souborů tak, že hledání souboru probíhá rychleji – získáváním dvoumístných odpovědí na otázky o umístění souboru. Otázka, na kterou může binární strom odpovědět, zní: ve které skupině vzhledem k danému prvku se hledá jméno, nahoře nebo dole? Začínáme takovou otázkou na prostřední prvek a každá odpověď zužuje oblast hledání v průměru dvakrát. Soubory jsou, řekněme, jednoduše seřazeny podle abecedy a otázka je zodpovězena zřejmým způsobem – porovnáním počátečních písmen. Oblast hledání zúžená na polovinu se začíná prozkoumávat podobným způsobem, začíná se znovu od prostředního prvku.

Závěr - k vyhledání jednoho souboru mezi 1000 bude například FAT muset provést průměrně 500 porovnání (s největší pravděpodobností bude soubor nalezen uprostřed hledání) a stromový systém bude musíte udělat asi 10 (2^10 = 1024). Úspora času při hledání je zřejmá. Neměli byste si však myslet, že v tradičních systémech (FAT) je vše tak zanedbáváno: za prvé je udržování seznamu souborů ve formě binárního stromu poměrně pracné a za druhé i FAT prováděný moderním systémem (Windows2000 nebo Windows98) používá podobné optimalizační vyhledávání. Toto je jen další skutečnost, kterou můžete přidat do své znalostní báze. Rád bych také vyvrátil běžnou mylnou představu (kterou jsem sám nedávno sdílel), že přidat soubor do adresáře ve formě stromu je obtížnější než do lineárního adresáře: jsou to časově docela srovnatelné operace - faktem je že abyste mohli přidat soubor do adresáře, musíte se nejprve ujistit, že soubor s tímto názvem tam ještě není :) - a zde v lineárním systému budeme mít potíže s nalezením souboru, popsaného výše, který více než kompenzovat samotnou jednoduchost přidání souboru do adresáře.

Jaké informace lze získat pouhým přečtením souboru katalogu? Přesně to, co říká příkaz dir. Chcete-li provést jednoduchou navigaci na disku, nemusíte pro každý soubor chodit do MFT, stačí si přečíst většinu obecné informace o souborech z adresářových souborů. Hlavní adresář disku – root – se neliší od běžných adresářů, až na speciální odkaz na něj ze začátku metasouboru MFT.

      Logování

NTFS je systém odolný proti chybám, který se může snadno obnovit do správného stavu v případě téměř jakéhokoli skutečného selhání. Každý moderní souborový systém je založen na konceptu transakce – akce provedené zcela a správně nebo neprovedena vůbec. NTFS prostě nemá mezistavy (chybné nebo nesprávné) - kvantum změn dat nelze rozdělit na před a po selhání, přinášející destrukci a zmatek - buď je potvrzeno, nebo zrušeno.

Příklad 1: data se zapisují na disk. Najednou se ukazuje, že nebylo možné zapisovat do místa, kam jsme se právě rozhodli zapsat další porci dat – fyzické poškození povrchu. Chování NTFS je v tomto případě celkem logické: transakce zápisu je zcela odvolána - systém si uvědomí, že zápis nebyl proveden. Místo je označeno jako neúspěšné a data jsou zapsána do jiného umístění - začíná nová transakce.

Příklad 2: více těžký případ- data se zapisují na disk. Najednou prásk - napájení se vypne a systém se restartuje. V jaké fázi se záznam zastavil, kde jsou data a kde je nesmysl? Na pomoc přichází další systémový mechanismus – transakční protokol. Faktem je, že systém, který si uvědomil svou touhu zapisovat na disk, označil tento stav v metasouboru $LogFile. Při restartu je tento soubor zkoumán na přítomnost nedokončených transakcí, které byly přerušeny nehodou a jejichž výsledek je nepředvídatelný - všechny tyto transakce jsou zrušeny: místo, kde byl proveden zápis, je opět označeno jako volné, indexy a prvky MFT se vrátí do stavu, ve kterém byly před selháním, a systém jako celek zůstává stabilní. No a co když došlo k chybě při zápisu do logu? Je to také v pořádku: transakce buď ještě nezačala (existuje pouze pokus o zaznamenání záměrů ji provést), nebo již skončila - to znamená, že existuje pokus zaznamenat, že transakce již skutečně proběhla. dokončeno. V druhém případě při příštím spuštění systém sám plně pochopí, že ve skutečnosti bylo vše stejně napsáno správně, a nebude věnovat pozornost „nedokončené“ transakci.

Přesto pamatujte, že protokolování není absolutní všelék, ale pouze prostředek k výraznému snížení počtu chyb a selhání systému. Je nepravděpodobné, že by si průměrný uživatel NTFS někdy všimnul systémové chyby nebo byl nucen spustit chkdsk - zkušenosti ukazují, že NTFS je obnoven do zcela správného stavu i v případě poruch ve chvílích velmi zaneprázdněných činností disku. Můžete dokonce optimalizovat disk a uprostřed tohoto procesu stisknout reset - pravděpodobnost ztráty dat bude i v tomto případě velmi nízká. Je však důležité pochopit, že systém Obnova NTFS zaručuje správnost systému souborů, nikoli vašich dat. Pokud jste zapisovali na disk a došlo k selhání, vaše data nemusí být zapsána. Neexistují žádné zázraky.

Soubory NTFS mají jeden docela užitečný atribut – „komprimovaný“. Faktem je, že NTFS má vestavěnou podporu pro kompresi disku - něco, pro co jste dříve museli používat Stacker nebo DoubleSpace. Jakýkoli soubor nebo adresář lze jednotlivě uložit na disk v komprimované podobě – tento proces je pro aplikace zcela transparentní. Komprese souborů má velmi vysokou rychlost a pouze jednu velkou negativní vlastnost – obrovskou virtuální fragmentaci komprimovaných souborů, která však opravdu nikoho netrápí. Komprese se provádí v blocích po 16 clusterech a využívá tzv. „virtuální clustery“ – opět extrémně flexibilní řešení, které umožňuje dosáhnout zajímavé efekty- například polovinu souboru lze komprimovat, ale polovinu nikoli. Toho je dosaženo díky skutečnosti, že ukládání informací o kompresi určitých fragmentů je velmi podobné běžné fragmentaci souborů: například typický záznam fyzického rozvržení skutečného, ​​nekomprimovaného souboru:

souborové clustery od 1 do 43 jsou uloženy v diskových clusterech počínaje 400, souborové clustery od 44 do 52 jsou uloženy v diskových clusterech od 8530...

Fyzické rozložení typického komprimovaného souboru:

clustery souborů od 1 do 9 jsou uloženy na diskových clusterech počínaje 400 souborovými clustery od 10 do 16 nejsou nikde uloženy clustery souborů od 17 do 18 jsou uloženy v diskových clusterech počínaje 409 souborovými clustery od 19 do 36. není nikde uloženo. ...

To je jasné komprimovaný soubor má „virtuální“ shluky, ve kterých nejsou žádné skutečné informace. Jakmile systém uvidí takové virtuální shluky, okamžitě pochopí, že data z předchozího bloku, násobek 16, musí být dekomprimována a výsledná data pouze zaplní virtuální shluky - to je ve skutečnosti celý algoritmus .

      Bezpečnost

NTFS obsahuje mnoho prostředků pro vymezení práv objektů – předpokládá se, že se jedná o nejpokročilejší souborový systém ze všech aktuálně existujících. Teoreticky je to nepochybně pravda, ale v současných implementacích je systém práv bohužel dosti vzdálen od ideálu a i když je rigidní, není vždy logickým souborem vlastností. Práva přidělená jakémukoli objektu a systémem jednoznačně respektovaná se vyvíjejí - velké změny a doplňky práv byly provedeny již několikrát a u Windows 2000 konečně dospěly k poměrně rozumné sadě.

Práva souborového systému NTFS jsou neoddělitelně spjata se systémem samotným – to znamená, že obecně řečeno nemusí být respektována jiným systémem, pokud je mu poskytnut fyzický přístup k disku. Aby se zabránilo fyzickému přístupu, systém Windows 2000 (NT5) stále zavedl standardní funkci - více o tom viz níže. Systém práv v současném stavu je dosti složitý a pochybuji, že budu moci běžnému čtenáři sdělit něco zajímavého a užitečného. obyčejný život. Pokud vás toto téma zajímá, najdete mnoho knih o architektuře sítě NT, které to popisují podrobněji.

V tuto chvíli lze popis struktury souborového systému dokončit, zbývá popsat jen určitý počet jednoduše praktických či originálních věcí.

Tato věc byla v NTFS od nepaměti, ale byla používána velmi zřídka - a přesto: Hard Link je, když stejný soubor má dvě jména (několik ukazatelů na soubor-adresář nebo různé adresáře ukazují na stejný záznam MFT) . Řekněme, že stejný soubor má názvy 1.txt a 2.txt: pokud uživatel smaže soubor 1, zůstane soubor 2, pokud smaže 2, zůstane soubor 1, tedy oba názvy, od okamžiku vytvoření, jsou si naprosto rovni. Soubor je fyzicky vymazán pouze tehdy, když je smazáno jeho příjmení.

      Symbolické odkazy (NT5)

Mnohem praktičtější funkce, která umožňuje vytvářet virtuální adresáře – úplně stejné jako virtuální disky pomocí příkazu subst v DOSu. Aplikace jsou velmi rozmanité: za prvé, zjednodušení systému katalogů. Pokud se vám nelíbí adresář Dokumenty a nastavení\Správce\Dokumenty, můžete jej propojit s kořenovým adresářem – systém bude s adresářem stále komunikovat divokou cestou a vy budete mít mnohem kratší název, který je zcela ekvivalentní k tomu. K vytvoření takových spojení můžete použít program junction (junction.zip(15 Kb), 36 kb), který napsal slavný specialista Mark Russinovich (http://www.sysinternals.com). Program funguje pouze v NT5 (Windows 2000), stejně jako funkce samotná. Chcete-li spojení odebrat, můžete použít standardní příkaz rd. VAROVÁNÍ: Pokus o smazání odkazu pomocí Průzkumníka nebo jiných správců souborů, kteří nerozumí virtuální povaze adresáře (jako je FAR), smaže data, na která odkaz odkazuje! Buďte opatrní.

      Šifrování (NT5)

Užitečná funkce pro lidi, kteří se obávají o svá tajemství – každý soubor nebo adresář lze také zašifrovat, což znemožňuje další instalaci NT jeho čtení. V kombinaci se standardním a prakticky neprolomitelným heslem pro spouštění samotného systému poskytuje tato funkce dostatečné zabezpečení pro většinu aplikací pro důležitá data, která vyberete.

Soubory a struktura souborů

Ve výpočetní technice je jednotkou ukládání dat objekt proměnné délky tzv soubor. Soubor je posloupnost libovolného počtu bajtů, které má jedinečné jméno. Souborové systémy vytvořit pro uživatele určitou virtuální reprezentaci externích počítačových úložných zařízení, která jim umožní pracovat s ovládacími příkazy, které nejsou na nízké úrovni fyzická zařízení a dále vysoká úroveň množiny a datové struktury. Systém souborů je tedy systémem správy dat.

Název souboru má zvláštní význam – nese vlastně adresovací funkce v hierarchických strukturách. Kromě toho může mít název rozšíření, který ukládá informace o datovém typu. Pokud si uživatel může nastavit názvy vytvářených souborů libovolně, pak by se v používání přípon měla dodržovat určitá tradice. Například v operačním systému MS DOS jsou spustitelné soubory s příponami: .com, .exe, .bat; .bat, .txt, .doc – - text; .pas, .bas, .c, .for – - texty programů v známé jazyky programování: (Pascal, BASIC, C, Fortran, v tomto pořadí); .dbf – - databázový soubor. Různé operační systémy mají omezení na délku názvu souboru a příponu názvu souboru. V MS DOS by tedy délka názvu souboru neměla přesáhnout osm znaků a používá se přípona - tři, tj. standard 8.3. V operačním systému Omezení Windows mnohem méně drsné.

Soubor je pro uživatele hlavním a nedělitelným prvkem datového úložiště, který lze nalézt, změnit, smazat, uložit nebo odeslat do zařízení či jiného počítače, avšak pouze v celku.

Souborový systém je součástí operačního systému počítače a nese tedy vždy otisk vlastností konkrétního operačního systému. Souborový systém skrývá před uživatelem obraz skutečného umístění informací v externí paměti, zajišťuje nezávislost programů na vlastnostech konkrétní konfigurace počítače, tzn. logická úroveň práci se soubory. Při práci se soubory má uživatel k dispozici nástroje pro vytváření nových souborů, operace pro čtení a zápis informací atd., které neovlivňují specifické otázky programování kanálu pro odesílání dat nebo ovládání externích zařízení.

Nejběžnější typ souborů vnitřní struktura které poskytují souborové systémy různých operačních systémů jsou soubory se sekvenční strukturou. Soubory jsou v tomto případě reprezentovány jako množina základních prvků nazývaných logické záznamy libovolné délky a s sekvenční přístup. Některé operační systémy umožňují použití složitějších logických struktur souborů, jako je stromová struktura. Na fyzické úrovni Bloky souborů mohou být umístěny v paměti jako souvislá oblast nebo uloženy nesouvisle. Všechny účetní informace o umístění souborů na magnetický disk zredukováno na jedno místo - katalog nebo adresář disk. Adresář je seznam prvků, z nichž každý popisuje vlastnosti konkrétního souboru používaného k organizaci přístupu k němu – název souboru, jeho typ, umístění na disku, velikost. Katalogy mohou být velký počet a jsou propojeny do informačních struktur, například do hierarchického (stromového) adresářového systému. Každý adresář je považován za soubor a má svůj vlastní název. Úplný název adresáře nebo souboru v takové struktuře určuje cestu přechodů mezi adresáři a soubory v logické adresářové struktuře (viz obrázek 1.5).

Rýže. 1.5. Hierarchický adresářový systém

Struktura samotných souborů může být triviální. Text může být například uložen jako sekvence bajtů odpovídajících kódování ASCII tabulky. Ve většině případů je však nutné spolu s daty uložit i některé další informace.


osobní údaje. Nazývá se způsob organizace dat v souboru, tedy struktura souboru formát. Formát souboru určuje, jak jsou uložená data správně interpretována. Existuje několik různých formátů souborů. Některé z nich jsou standardizované a podporovány jakýmkoli operačním systémem, některé jsou specifické pouze pro tyto operační systémy. Záhlaví souboru často obsahuje identifikátor formátu souboru. Moderní softwarové systémy umožňují současně zahrnout data do souboru různé typy, tj. soubor může mít velmi složitý formát. Do dokumentu MS Word můžete například zahrnout text, obrázky, tabulky, vzorce a mnoho dalšího.

Ve většině případů uživatel nemusí o ničem vědět vnitřní struktura soubory. Toto je vrstva abstrakce rozhraní operačních systémů.

Dříve nebo později se začínající uživatel počítače setká s takovým konceptem, jako je souborový systém (FS). K prvnímu seznámení s tímto pojmem zpravidla dochází při formátování paměťového média: logické jednotky a připojená média (flash disky, paměťové karty, vnější tvrdý disk).

Před formátováním vás operační systém Windows vyzve k výběru typu systému souborů na médiu, velikosti clusteru a způsobu formátování (rychlé nebo úplné). Pojďme zjistit, co je souborový systém a proč je potřeba?

Veškeré informace jsou zaznamenány na médium ve formuláři, ve kterém by se měly nacházet v určitém pořadí, jinak operační systém a programy nebudou moci s daty pracovat. Toto pořadí je organizováno systémem souborů pomocí určitých algoritmů a pravidel pro umístění souborů na médium.

Když program potřebuje soubor uložený na disku, nemusí vědět, jak a kde je uložen. Vše, co program vyžaduje, je znát název souboru, jeho velikost a atributy, aby mohl tato data přenést do souborového systému, který poskytne přístup k požadovaný soubor. Totéž se děje při zápisu dat na médium: program přenese informace o souboru (jméno, velikost, atributy) do systému souborů, který je uloží podle vlastních specifických pravidel.

Pro lepší pochopení si představte, že knihovník dává knihu klientovi na základě jejího názvu. Nebo v opačném pořadí: klient vrátí knihu, kterou přečetl, knihovníkovi, který ji uloží zpět. Klient nemusí vědět, kde a jak je kniha uložena, za to odpovídá pracovník provozovny. Knihovník zná pravidla katalogizace knihoven a podle těchto pravidel publikaci vyhledá nebo ji zařadí zpět, tzn. vykonává své oficiální funkce. V tomto příkladu je knihovna paměťové médium, knihovník je souborový systém a klient je program.

Základní funkce souborového systému

Hlavní funkce souborového systému jsou:

  • umístění a organizace na nosiči dat ve formě souborů;
  • stanovení maximálního podporovaného množství dat na paměťovém médiu;
  • vytváření, čtení a mazání souborů;
  • přiřazování a změna atributů souboru (velikost, čas vytvoření a úpravy, vlastník a tvůrce souboru, pouze pro čtení, skrytý soubor, dočasný soubor, archivovaný, spustitelný soubor, maximální délka název souboru atd.);
  • určení struktury souboru;
  • organizování adresářů pro logická organizace soubory;
  • ochrana souborů v případě selhání systému;
  • ochrana souborů před neoprávněným přístupem a změna jejich obsahu.

Informace zaznamenané na pevný disk nebo jakékoliv jiné médium, je v něm umístěno na základě klastrové organizace. Cluster je druh buňky o určité velikosti, do které se vejde celý soubor nebo jeho část.

Pokud má soubor velikost clusteru, pak zabírá pouze jeden cluster. Pokud velikost souboru překročí velikost buňky, je umístěn do několika buněk klastru. Navíc volné shluky nemusí být umístěny vedle sebe, ale mohou být rozptýleny po fyzickém povrchu disku. Tento systém umožňuje co nejefektivněji využít prostor při ukládání souborů. Úkolem souborového systému je optimálním způsobem distribuovat soubor při zápisu do volných clusterů a také jej při čtení sestavit a předat programu nebo operačnímu systému.

Typy souborových systémů

Během evoluce počítačů, paměťových médií a operačních systémů se objevilo a zaniklo velké množství souborových systémů. V procesu takového evolučního výběru, dnes pro práci s pevnými disky a externími úložnými zařízeními (flash disky, paměťové karty, externí pevné disky, CD) se používají především tyto typy FS:

  1. FAT32
  2. ISO9660

Poslední dva systémy jsou určeny pro práci s CD. Souborové systémy Ext3 a Ext4 pracují s operačními systémy založenými na Na bázi Linuxu. NFS Plus je souborový systém pro operační systémy OS X používaný na počítačích Apple.

Nejpoužívanějšími souborovými systémy jsou NTFS a FAT32, a to není překvapivé, protože... jsou určeny pro operační systémy Windows, na kterých běží drtivá většina počítačů na světě.

Nyní je FAT32 aktivně nahrazován pokročilejším systémem NTFS kvůli jeho větší spolehlivosti v bezpečnosti a ochraně dat. Navíc nejnovější verze operačního systému Windows se jednoduše nedovolí nainstalovat, pokud je oddíl pevného disku naformátován na FAT32. Instalační program vás požádá o naformátování oddílu na NTFS.

Souborový systém NTFS podporuje disky s kapacitou stovek terabajtů a velikostí jednoho souboru až 16 terabajtů.

Systém souborů FAT32 podporuje disky o velikosti až 8 terabajtů a velikosti jednoho souboru až 4 GB. Nejčastěji se tento FS používá na flash discích a paměťových kartách. Externí disky jsou z výroby naformátovány na FAT32.

Omezení velikosti souboru 4GB je však již dnes velkou nevýhodou, protože... Kvůli distribuci vysoce kvalitního videa velikost souboru filmu překročí tento limit a nebude možné jej zaznamenat na médium.

Podíl.

Dobrý den, milý uživateli, v tomto článku budeme hovořit o takovém tématu, jako jsou soubory. Konkrétně se podíváme na: Správa souborů, typy souborů, struktura souboru, atributy souboru.

Systém souborů

Jedním z hlavních úkolů OS je poskytnout uživateli pohodlí při práci s daty uloženými na discích. K tomu OS nahrazuje fyzickou strukturu uložených dat nějakým uživatelsky přívětivým logickým modelem, který je implementován ve formě adresářového stromu zobrazovaného na obrazovce utilitami jako Norton Commander, Far Manager nebo Windows Explorer. Základním prvkem tohoto modelu je soubor, což je stejné jako souborový systém obecně lze charakterizovat jak logickou, tak fyzickou strukturou.

Správa souborů

Soubor– pojmenovaná oblast externí paměti určená pro čtení a zápis dat.

Soubory jsou uloženy v energeticky nezávislé paměti. Výjimkou je elektronický disk, kdy je v OP vytvořena struktura simulující souborový systém.

Systém souborů(FS) je komponenta OS, která zajišťuje organizaci pro vytváření, ukládání a přístup k pojmenovaným datovým sadám – souborům.

Souborový systém zahrnuje: Souborový systém zahrnuje:

  • Sbírka všech souborů na disku.
  • Sady datových struktur používaných ke správě souborů (adresáře souborů, deskriptory souborů, tabulky alokace volného a použitého místa na disku).
  • Sada systémových softwarových nástrojů, které implementují různé operace se soubory: vytvoření, zničení, čtení, zápis, pojmenování, vyhledávání.

Problémy řešené FS závisí na způsobu, jakým je výpočetní proces organizován jako celek. Nejjednodušším typem je souborový systém v jednouživatelských a jednoprogramových operačních systémech. Hlavní funkce v takovém FS jsou zaměřeny na řešení následujících úkolů:

  • Pojmenování souborů.
  • Softwarové rozhraní pro aplikace.
  • Displeje logický model FS pro fyzickou organizaci datového skladu.
  • Odolnost FS proti výpadkům napájení, chybám hardwaru a softwaru.

Úlohy FS se komplikují v jednouživatelských multitaskingových operačních systémech, které jsou určeny pro práci jednoho uživatele, ale umožňují spouštět více procesů současně. Kromě výše uvedených úkolů nový úkolsdílení do souboru z více procesů.

Soubor je v tomto případě sdílený prostředek, což znamená, že FS musí vyřešit celou řadu problémů spojených s takovými prostředky. Zejména: musí existovat prostředky pro blokování souboru a jeho částí, sladění kopií, zabránění rasám a odstranění uváznutí. Ve víceuživatelských systémech se objevuje další úkol: Ochrana souborů jednoho uživatele před neoprávněným přístupem jiného uživatele.

Funkce FS, který funguje jako součást síťového operačního systému, se stávají ještě složitějšími, protože potřebuje organizovat ochranu soubory jeden uživatel před neoprávněným přístupem jiného uživatele.

Hlavní účel souborový systém a tomu odpovídající systémy pro správu souborů– organizace pohodlné správy souborů organizovaných jako soubory: namísto nízkoúrovňového přístupu k údajům označujícím konkrétní fyzické adresy záznam, který potřebujeme, se používá logický přístup s uvedením názvu souboru a záznamu v něm.

Pojmy „souborový systém“ a „systém správy souborů“ je třeba rozlišovat: souborový systém definuje především principy přístupu k datům organizovaným jako soubory. A termín „systém správy souborů“ by měl být používán ve vztahu ke konkrétní implementaci systému souborů, tzn. tohle je komplex softwarových modulů, zajišťující práci se soubory v konkrétním OS.

Příklad

Systém souborů FAT (tabulka alokace souborů) má mnoho implementací jako systém správy souborů

  • Systém vyvinutý pro první PC byl jednoduše nazýván FAT (nyní se nazývá jednoduše FAT-12). Byl navržen pro práci s disketami a nějakou dobu se používal pro práci s pevnými disky.
  • Poté byla vylepšena pro práci s většími pevnými disky a tato nová implementace byla nazvána FAT-16. tento název se také používá ve vztahu k SUF samotného systému MS-DOS.
  • Implementace SUF pro OS/2 se nazývá super-FAT (hlavním rozdílem je schopnost podporovat rozšířené atributy pro každý soubor).
  • Existuje verze SUF pro Windows 9x/NT atd. (FAT-32).

Typy souborů

Běžné soubory: obsahují informace libovolného charakteru, které do nich vkládá uživatel nebo které jsou generovány v důsledku provozu systému a uživatelské programy. Obsah běžného souboru je určen aplikací, která s ním pracuje.

Běžné soubory mohou být dvou typů:

  1. Software(spustitelný) – jsou programy napsané v příkazovém jazyce OS a vykonávají některé systémové funkce (mají přípony .exe, .com, .bat).
  2. Datové soubory– všechny ostatní typy souborů: textové a grafické dokumenty, tabulky, databáze atd.

Katalogy- jedná se na jedné straně o skupinu souborů, které uživatel na základě určitých úvah sloučí (například soubory obsahující herní programy nebo soubory, které tvoří jeden softwarový balík), a na druhé straně se jedná o speciální typ souborů, které obsahují systém informace o pozadí o množině souborů seskupených podle uživatelů podle nějakého neformálního kritéria (typ souboru, jeho umístění na disku, přístupová práva, datum vytvoření a úpravy).

Speciální soubory jsou fiktivní soubory spojené se vstupními/výstupními zařízeními, které se používají ke sjednocení mechanismu přístupu k souborům a externí zařízení. Speciální soubory umožňují uživateli provádět I/O operace pomocí normálních příkazů pro zápis nebo čtení souborů. Tyto příkazy jsou nejprve zpracovány programy FS a poté je v určité fázi provádění požadavku převede OS na řídicí příkazy pro odpovídající zařízení (PRN, LPT1 - pro port tiskárny (symbolické názvy, pro OS - to jsou soubory), CON - pro klávesnici).

Příklad. Copy con text1 (práce s klávesnicí).

Struktura souboru

Struktura souboru– celá sada souborů na disku a vztahy mezi nimi (pořadí, ve kterém jsou soubory na disku uloženy).

Typy struktur souborů:

  • jednoduchý nebo jednoúrovňový: Adresář je lineární posloupnost souborů.
  • hierarchický nebo víceúrovňový: samotný adresář může být součástí jiného adresáře a obsahovat v něm mnoho souborů a podadresářů. Hierarchická struktura může být dvou typů: „Strom“ a „Síť“. Adresáře tvoří „Strom“, pokud lze soubor zahrnout pouze do jednoho adresáře (OS MS-DOS, Windows) a „Síť“ – pokud lze soubor zařadit do více adresářů najednou (UNIX).
  • Struktura souboru může být reprezentována jako graf popisující hierarchii adresářů a souborů:



Typy názvů souborů

Soubory jsou identifikovány jmény. Uživatelé dávají soubory symbolická jména, to bere v úvahu omezení OS týkající se použitých znaků a délky názvu. V raných souborových systémech byly tyto hranice poměrně úzké. Takže v populární Systém souborů FAT Délka jmen je omezena známým schématem 8.3 (8 znaků - samotný název, 3 znaky - přípona jména) a v UNIX System V název nesmí obsahovat více než 14 znaků.

Pro uživatele je však mnohem pohodlnější pracovat s dlouhými jmény, protože umožňují přiřadit souboru skutečně mnemotechnický název, podle kterého si i po poměrně dlouhé době zapamatujete, co tento soubor obsahuje. Proto moderní systémy souborů mají tendenci podporovat dlouhé symbolické názvy souborů.

Například Windows NT ve svém souboru systém NTFS určuje, že název souboru může být dlouhý až 255 znaků, nepočítaje koncový znak null.

Přesun na dlouhé názvy vytváří problém s kompatibilitou s dříve vytvořenými aplikacemi, které používají krátké názvy. Aby aplikace přistupovaly k souborům podle dříve přijatých konvencí, musí být souborový systém schopen poskytovat ekvivalentní krátká jména (aliasy) souborům s dlouhými názvy. Tedy jeden z důležité úkoly Vygenerovat vhodná krátká jména se stává problémem.

Symbolická jména mohou být tří typů: jednoduchá, složená a relativní:

  1. Jednoduché jméno identifikuje soubor v rámci jednoho adresáře, přiřazený k souborům s ohledem na nomenklaturu symbolů a délku názvu.
  2. Celé jméno je řetězec jednoduchých symbolických názvů všech adresářů, kterými prochází cesta od kořene k danému souboru, název disku, název souboru. Takže celé jméno je kompozitní, ve kterém jednoduchá jména oddělené od sebe oddělovačem přijatým v OS.
  3. Soubor lze také identifikovat relativní jméno. Relativní název souboru je určen konceptem "aktuálního adresáře". V každém okamžiku je jeden z adresářů aktuální a tento adresář si volí uživatel sám na příkaz OS. Souborový systém zachytí název aktuálního adresáře, aby jej pak mohl použít jako doplněk k relativním jménům k vytvoření plně kvalifikovaného názvu souboru.

Ve stromové struktuře souborů existuje vzájemná shoda mezi souborem a jeho úplným názvem – „jeden soubor – jedno celé jméno“. V síťové struktuře souborů může být soubor zahrnut do několika adresářů, což znamená, že může mít několik úplných jmen; Korespondence zde je „jeden soubor – mnoho celých jmen“.

Pro soubor 2.doc definujte všechny tři typy jmen za předpokladu, že aktuální adresář je adresář 2008_year.

  • Jednoduchý název: 2.doc
  • Celé jméno: C:\2008_rok\Dokumenty\2.doc
  • Příbuzné jméno: Documents\2.doc

Atributy souboru

Důležitou vlastností souboru jsou jeho atributy. Atributy– jedná se o informace popisující vlastnosti souborů. Příklady možných atributů souboru:

  • atribut pouze pro čtení;
  • Podepište „skrytý soubor“ (Skrytý);
  • Podepište „systémový soubor“ (Systém);
  • Podepište „archivační soubor“ (Archiv);
  • Typ souboru ( běžný soubor, adresář, speciální soubor);
  • Vlastník souboru;
  • Tvůrce souborů;
  • Heslo pro přístup k souboru;
  • Informace o povolených operacích přístupu k souborům;
  • Čas vytvoření, poslední přístup a poslední změna;
  • Aktuální velikost souboru;
  • Maximální velikost souboru;
  • Podepište „dočasné (odstranit po dokončení procesu)“;
  • Blokovací znamení.

V různých typech souborových systémů mohou být k charakterizaci souborů použity různé sady atributů (například v OS pro jednoho uživatele sada atributů nebude obsahovat vlastnosti související s uživatelem a zabezpečením (tvůrce souboru, heslo pro přístup k souboru atd.).

Uživatel může přistupovat k atributům pomocí prostředků, které pro tento účel poskytuje systém souborů. Obvykle můžete číst hodnoty jakýchkoli atributů, ale změnit pouze některé, například můžete změnit přístupová práva k souboru, ale nemůžete změnit datum vytvoření nebo aktuální velikost souboru.

Oprávnění k souboru

Definování přístupových práv k souboru znamená definovat pro každého uživatele sadu operací, na které může aplikovat tento soubor. Různé systémy souborů mohou mít svůj vlastní seznam operací diferencovaného přístupu. Tento seznam může obsahovat následující operace:

  • vytvoření souboru.
  • zničení souboru.
  • zápisu do souboru.
  • otevření souboru.
  • zavření souboru.
  • čtení ze souboru.
  • přidání souboru.
  • hledat v souboru.
  • získání atributů souboru.
  • nastavení nových hodnot atributů.
  • přejmenování.
  • provedení souboru.
  • čtení katalogu atd.

Ve velmi obecný případ přístupová práva lze popsat maticí přístupových práv, ve které sloupce odpovídají všem souborům v systému, řádky všem uživatelům a na průsečíku řádků a sloupců jsou vyznačeny povolené operace:

V některých systémech mohou být uživatelé rozděleni do samostatných kategorií. Pro všechny uživatele stejné kategorie jsou definována jednotná přístupová práva, například v systému UNIX jsou všichni uživatelé rozděleni do tří kategorií: vlastník souboru, členové jeho skupiny a všichni ostatní.




Nahoru