Harde schijfpartities en bestandssystemen. Basisconcepten en basisprincipes van werk. Wat is een bestandssysteem en hoe kunt u het type bestandssysteem op een schijf achterhalen. Het bestandssysteem is

Bestandssystemen

Informatie op schijven wordt vastgelegd in sectoren met een vaste lengte, en elke sector en de locatie van elk fysiek record (sector) op de schijf wordt uniek geïdentificeerd door drie nummers: het schijfoppervlak, de cilinder en de sectornummers op de baan. En de schijfcontroller werkt precies op deze manier met de schijf. En de gebruiker wil geen sectoren, cilinders en oppervlakken gebruiken, maar bestanden en mappen. Daarom moet het besturingssysteem of een ander programma bewerkingen met bestanden en mappen op schijven vertalen in acties die begrijpelijk zijn voor de controller: het lezen en schrijven van bepaalde sectoren van de schijf. En om dit te doen, is het noodzakelijk om de regels vast te stellen waarmee deze vertaling wordt uitgevoerd, dat wil zeggen in de eerste plaats om te bepalen hoe informatie op schijven moet worden opgeslagen en georganiseerd.

Een bestandssysteem is een reeks conventies die de organisatie van gegevens op opslagmedia definiëren. Dankzij deze conventies kunnen het besturingssysteem, andere programma's en gebruikers met bestanden en mappen werken

Het bestandssysteem definieert:

1. hoe bestanden en mappen op de schijf worden opgeslagen;

2. welke informatie wordt opgeslagen over bestanden en mappen;

3. hoe kom je erachter welke delen van de schijf vrij zijn en welke niet;

4. formaat van mappen en andere service-informatie op de schijf.

Om schijven te gebruiken die met een bestandssysteem zijn geschreven, moet het besturingssysteem of een speciaal programma dat bestandssysteem ondersteunen.

Informatie wordt hoofdzakelijk op schijven opgeslagen en de daarop gebruikte bestandssystemen bepalen de organisatie van gegevens op harde magnetische schijven.

De besturingssystemen van de MS Windows-familie gebruiken de volgende bestandssystemen: FAT, FAT 32, NTFS.

Bestandssysteem FAT

FAT is het eenvoudigste bestandssysteem dat door Windows NT wordt ondersteund. De basis van het bestand FAT-systemen is een tafel plaatsing van bestanden, die helemaal aan het begin van het volume wordt geplaatst. In geval van schade worden twee exemplaren van deze tabel op schijf opgeslagen. Bovendien moeten de bestandstoewijzingstabel en de hoofdmap op een specifieke locatie op de schijf worden opgeslagen (bijv juiste definitie bestandslocaties downloaden). Een schijf die is geformatteerd met het FAT-bestandssysteem is verdeeld in clusters, waarvan de grootte afhangt van de grootte van het volume. Gelijktijdig met het aanmaken van het bestand wordt er een vermelding in de directory aangemaakt en wordt het nummer van het eerste cluster dat de gegevens bevat, ingesteld. Een dergelijke vermelding in de bestandstoewijzingstabel geeft aan dat dit het laatste cluster van het bestand is, of verwijst naar het volgende cluster.

Het bijwerken van de bestandstoewijzingstabel heeft groot belang en kost veel tijd. Als de bestandstoewijzingstabel niet regelmatig wordt bijgewerkt, kan dit leiden tot gegevensverlies. De duur van de bewerking wordt verklaard door de noodzaak om de leeskoppen elke keer dat de FAT-tabel wordt bijgewerkt naar het logische nulspoor van de schijf te verplaatsen. De FAT-directory heeft geen specifieke structuur en bestanden worden naar de eerste beschikbare vrije ruimte op de schijf geschreven. Bovendien ondersteunt het FAT-bestandssysteem er slechts vier bestandskenmerk: "Systeem", "Verborgen", "Alleen lezen" en "Archief".

Op een computer met Windows NT kunt u de verwijdering op geen enkel ondersteund bestandssysteem ongedaan maken. Het verwijderprogramma probeert rechtstreeks toegang te krijgen tot de hardware, wat niet mogelijk is bij gebruik van Windows NT. Als het bestand zich echter op een FAT-partitie bevond, kan het verwijderen van het bestand worden geannuleerd door de computer op te starten in de MS-DOS-modus. Het FAT-bestandssysteem is het beste voor gebruik op schijven en partities tot 200 MB groot, omdat het met minimale overhead werkt.

Als algemene regel geldt dat u het FAT-bestandssysteem niet moet gebruiken voor schijven en partities groter dan 200 MB. Dit komt omdat de prestaties van het FAT-bestandssysteem snel afnemen naarmate de volumegrootte toeneemt. Er kunnen geen machtigingen worden ingesteld voor bestanden die zich op FAT-partities bevinden. FAT-partities hebben een maximale grootte: 4 GB voor Windows NT en 2 GB voor MS-DOS.

Een computer heeft meestal meerdere schijven. Elke schijf krijgt een naam toegewezen, die wordt aangegeven door een Latijnse letter met een dubbele punt, bijvoorbeeld A:, B:, C:, enz. Het wordt standaard geaccepteerd dat A: en B: diskettestations zijn, en dat stations C:, D:, enz. – harde schijven, optische schijven of elektronische schijven.

Elektronische schijven zijn onderdeel werkgeheugen, wat voor de gebruiker lijkt op een VZU. De snelheid van informatie-uitwisseling met een elektronische schijf is veel hoger dan met een elektromechanisch extern opslagapparaat. Wanneer elektronische schijven werken, is er geen slijtage aan elektromechanische onderdelen. Na het uitschakelen van de stroom wordt de informatie op de elektronische schijf echter niet opgeslagen.

Fysiek bestaande magnetische schijven kunnen worden onderverdeeld in verschillende logische schijven, die er voor de gebruiker op het scherm hetzelfde uitzien als fysiek bestaande schijven. Logische aandrijving is een onderdeel van een gewone harde schijf met een eigen naam.

De schijf waarop het besturingssysteem is opgenomen, wordt aangeroepen systemisch(of opstart) schijf. Als opstartschijf De meest gebruikte harde schijf is C:. Bij de behandeling van virussen of systeemstoringen wordt het besturingssysteem vaak vanaf een diskette geladen. Uitgegeven optische schijven, die ook opstartbaar kan zijn.

Om het nieuwe magnetische schijf informatie kan worden vastgelegd, moet deze vooraf worden geformatteerd. Opmaak- Dit is het voorbereiden van een schijf voor het opnemen van informatie.

Tijdens het formatteren wordt service-informatie naar de schijf geschreven (markering wordt uitgevoerd), die vervolgens wordt gebruikt om informatie te schrijven en te lezen, de rotatiesnelheid van de schijf te corrigeren en ook een systeemgebied toe te wijzen, dat uit drie delen bestaat:

ü opstartsector,

ü bestandstoewijzingstabellen,

ü hoofdmap.

Opstartsector(Boot Record) bevindt zich op elke schijf in logische sector genummerd 0. Het bevat informatie over het schijfformaat, evenals een kort programma dat in de procedure wordt gebruikt bootstrap besturingssysteem.

Er is een gebied op uw harde schijf dat het Master Boot Record (MBR) wordt genoemd. Meester Boot Record) of de hoofdopstartsector. De MBR specificeert vanaf welke logische schijf het besturingssysteem moet opstarten.

Bestandstoewijzingstabel(File Allocation Table - afgekort als FAT) bevindt zich na de opstartsector en bevat een beschrijving van de volgorde van locatie van alle bestanden in de sectoren van deze schijf, evenals informatie over defecte delen van de schijf. De FAT-tabel wordt gevolgd door een exacte kopie ervan, wat de betrouwbaarheid van het opslaan van deze zeer belangrijke tabel vergroot.

Hoofdmap(Root Directory) bevindt zich altijd achter de FAT-kopie. De hoofdmap bevat een lijst met bestanden en mappen op de schijf. Direct achter de hoofdmap bevinden zich de gegevens.

Bestandssysteem is een onderdeel van het besturingssysteem dat zorgt voor de organisatie en opslag van bestanden, en voor het uitvoeren van bewerkingen op bestanden.

Bestandssysteem. Schijven

Een computer heeft meestal meerdere schijven. Elke schijf krijgt een naam toegewezen, die wordt aangegeven door een Latijnse letter met een dubbele punt, bijvoorbeeld A:, B:, C:, enz. Het wordt standaard geaccepteerd dat A: en B: diskettestations zijn, en dat stations C:, D:, enz. – harde schijven, optische schijven of elektronische schijven.

Elektronische schijven maken deel uit van RAM, dat voor de gebruiker op VRAM lijkt. De snelheid van informatie-uitwisseling met een elektronische schijf is veel hoger dan met een elektromechanisch extern opslagapparaat. Wanneer elektronische schijven werken, is er geen slijtage aan elektromechanische onderdelen. Na het uitschakelen van de stroom wordt de informatie op de elektronische schijf echter niet opgeslagen.

Fysiek bestaande magnetische schijven kunnen worden opgedeeld in verschillende logische schijven, die voor de gebruiker op dezelfde manier op het scherm verschijnen als fysieke schijven. Logische aandrijving is een onderdeel van een gewone harde schijf met een eigen naam.

De schijf waarop het besturingssysteem is opgenomen, wordt aangeroepen systemisch(of opstart) schijf. Harde schijf C: wordt meestal gebruikt als opstartschijf. Bij de behandeling van virussen of systeemstoringen wordt het besturingssysteem vaak vanaf een diskette geladen. Er zijn optische schijven beschikbaar die ook kunnen worden opgestart.

Om informatie naar een nieuwe magnetische schijf te kunnen schrijven, moet deze vooraf worden geformatteerd. Opmaak- Dit is het voorbereiden van een schijf voor het opnemen van informatie.

Tijdens het formatteren wordt service-informatie naar de schijf geschreven (markering wordt uitgevoerd), die vervolgens wordt gebruikt om informatie te schrijven en te lezen, de rotatiesnelheid van de schijf te corrigeren en ook een systeemgebied toe te wijzen, dat uit drie delen bestaat:

opstartsector,

bestandstoewijzingstabellen,

hoofdmap.

Opstartsector(Boot Record) bevindt zich op elke schijf in logisch sectornummer 0. Het bevat gegevens over het schijfformaat, evenals een kort programma dat wordt gebruikt bij de opstartprocedure van het besturingssysteem.

Er is een gebied op uw harde schijf dat de MBR (Master Boot Record) of master boot sector wordt genoemd. De MBR specificeert vanaf welke logische schijf het besturingssysteem moet opstarten.

Bestandstoewijzingstabel(File Allocation Table - afgekort FAT) bevindt zich na de opstartsector en bevat een beschrijving van de volgorde van locatie van alle bestanden in de sectoren van een bepaalde schijf, evenals informatie over defecte delen van de schijf. De FAT-tabel wordt gevolgd door een exacte kopie ervan, wat de betrouwbaarheid van het opslaan van deze zeer belangrijke tabel vergroot.

Hoofdmap(Root Directory) bevindt zich altijd achter de FAT-kopie. De hoofdmap bevat een lijst met bestanden en mappen op de schijf. Direct achter de hoofdmap bevinden zich de gegevens.

Bestandssysteem is een onderdeel van het besturingssysteem dat zorgt voor de organisatie en opslag van bestanden, en voor het uitvoeren van bewerkingen op bestanden.

Bestand

Omdat adresgegevens ook een omvang hebben en ook moeten worden opgeslagen, is het opslaan van gegevens in kleine eenheden, zoals bytes, lastig. Ze zijn lastig op te bergen en meer grote eenheden(kilobytes, megabytes, enz.), aangezien het onvolledig vullen van één opslageenheid leidt tot inefficiëntie van de opslag.

Het opslaan en ophalen van informatie op externe opslagapparaten is belangrijk. Externe opslagapparaten zijn een soort van informatiemagazijnen, waar programma's en gegevens lange tijd worden opgeslagen totdat ze nodig zijn om een ​​probleem op te lossen. Stel je nu voor dat goederen zonder enig systeem in een magazijn worden opgeslagen. Hoe groter het magazijn, hoe moeilijker het is om het juiste product te vinden. Of neem bijvoorbeeld een kast waarin diverse documenten, boeken, rapporten, certificaten, etc. Bij het ontbreken van een specifieke opslagorganisatie kan het vinden van de benodigde documenten, vooral als het aantal aanzienlijk is, een zeer moeilijke en tijdrovende taak zijn.

Een object wordt beschouwd als een gegevensopslageenheid variabele lengte bestand genoemd.

Bestand is een benoemde verzameling gegevens die een bepaalde interne organisatie heeft en een bepaald gebied van de informatiedrager beslaat.

Meestal binnen apart bestand gegevens opslaan die tot hetzelfde type behoren. In dit geval is het gegevenstype bepalend bestandstype.

Omdat er geen maximale grootte is in de definitie van een bestand, kunt u zich een bestand voorstellen met 0 bytes (een leeg bestand) en een bestand met een willekeurig aantal bytes.

De bestandsnaam moet uniek zijn - zonder deze is het onmogelijk om ondubbelzinnige toegang tot gegevens te garanderen. In de computertechnologie wordt automatisch aan de eis van uniekheid van de naam voldaan: noch de gebruiker, noch de automatisering kan een bestand aanmaken met een naam die identiek is aan een bestaande.

Het bestand kan bevatten: een programma in machinecode, programmatekst in een algoritmische taal, documenttekst, rapport, salarisstrook, artikel, numerieke gegevens, opname van menselijke spraak of muzikale melodie, tekening, illustratie, tekening, foto, video, etc.

Het bestand wordt op aanwijzing van de gebruiker of automatisch aangemaakt met behulp van verschillende softwaresystemen, zoals besturingssystemen, shells, programmeertools, enz. Het gemaakte bestand krijgt een bepaalde naam toegewezen, er wordt ruimte toegewezen op schijfopslag en het wordt op een bepaalde manier in het besturingssysteem geregistreerd. Het nieuw aangemaakte bestand kan worden gevuld met enige informatie.

Elk bestand heeft een aantal karakteristieke eigenschappen: attributen. De belangrijkste kenmerken van het bestand zijn:

Naam,

verlenging,

tijd en datum van creatie.

Bestandsnaam, net zoals de naam van een persoon, dient de titel van een document, een boek, om het ene bestand van het andere te kunnen onderscheiden, om aan te geven vereiste bestand. In verschillende besturingssystemen worden bestandsnamen volgens verschillende regels gevormd. In het MS DOS-besturingssysteem is de bestandsnaam bijvoorbeeld



reeks letters van het Latijnse alfabet,

enkele speciale tekens (~, _, -, $, &, @, %,",!,(>)> (>). #).

De naam kan één tot acht (1 ... 8) tekens bevatten en wordt willekeurig gekozen. Het is raadzaam om bestandsnamen te selecteren, zodat de gebruiker gemakkelijk kan onthouden wat er precies in dit bestand staat. Een bestand met een rapport voor het 4e kwartaal kan bijvoorbeeld otchet4 worden genoemd, een bestand met een salarisstrook kan vedzarpl worden genoemd en een bestand met een soort tekening kan picture worden genoemd.

In het MS DOS-besturingssysteem mag de bestandsnaam niet bevatten

spaties,

brieven Russisch alfabet,

Bovendien mag het niet meer dan acht tekens bevatten. Over het algemeen zijn dit vrij aanzienlijke beperkingen. Een bestand met het bedrijfsrapport voor het 4e kwartaal, dat we otchet4 noemden, zou bijvoorbeeld bij voorkeur “Rapport voor het 4e kwartaal” heten, in extreme gevallen “Otchet za 4 kvartal”, met behulp van de zogenaamde transliteratie , wanneer woorden van de ene taal worden geschreven met letters van een andere taal. In operatiekamers Unix-systemen en Windows 9.x zijn beperkingen op de lengte van de naam en het gebruik van spaties en punten in de naam verwijderd. En in het Windows 9.x-besturingssysteem kunt u bovendien Russische letters in de naam gebruiken. Zo mag een bestand in Unix de naam “Report za 4 kvartal” hebben, en in Windows 9.x is de naam “Report for the 4th quarter” ook toegestaan.

Naast de naam kan elk bestand wel of niet een verlenging. De extensie wordt gebruikt om de inhoud van het bestand op een bepaalde manier te karakteriseren. De doc- en txt-extensies geven bijvoorbeeld aan dat het bestand een soort document of tekst bevat, terwijl de bmp-extensie een bestand aangeeft dat een afbeelding in bitmapformaat bevat. De eventuele extensie wordt door een punt gescheiden van de bestandsnaam. In het MS DOS-besturingssysteem kan de extensie één tot drie tekens bevatten, bijvoorbeeld otchet4.doc, vedzarpl.txt, picture.bmp, en in Unix- en Windows 9.x-systemen zijn meer dan drie tekens toegestaan. Als er geen extensie is, staat er geen punt in de bestandsnaam.

Als een bestand met een softwaresysteem wordt gemaakt, krijgt het in de regel automatisch een standaardextensie voor dit systeem en hoeft de gebruiker alleen de naam te selecteren of op te geven. Vervolgens herkent het softwaresysteem “zijn” bestanden met behulp van standaardextensies. Besturingssystemen bieden een aantal standaarduitbreidingen (Tabel 3.1).

Tabel 3.1

Sommige MS DOS- en Windows 9.x-extensies

Bestanden met de extensie .com (algemeen) en .exe (uitvoeren) bevatten programma's in machinetaal. Deze bestanden worden vaak programmabestanden genoemd. De verschillen tussen com-bestanden en exe-bestanden hebben betrekking op hun interne organisatie. Deze verschillen hebben op geen enkele manier invloed op de manier waarop bestanden worden verwerkt. Bestanden met de extensie .bat (batch) bevatten willekeurige reeksen besturingssysteemopdrachten. Dergelijke bestanden worden gewoonlijk batchbestanden genoemd. Termijn « uitvoerbaar bestand" combineert de concepten van "programmabestand" en " batch bestand" Met andere woorden: een 'uitvoerbaar bestand' betekent dat het bestand een machinetaalprogramma bevat dat rechtstreeks kan worden uitgevoerd door de processor van de computer (bestanden met de extensies .exe en .com) of een reeks besturingssysteemopdrachten (de .bat bestand) die ook worden uitgevoerd, maar alleen door toegang te krijgen tot de juiste programma's en besturingssysteemtools.

Een belangrijk kenmerk van een bestand is het lengte. De bestandslengte is gelijk aan de hoeveelheid ruimte die het bestand inneemt op schijf of tape en wordt daarom gemeten in bytes. De waarde van dit attribuut wordt gebruikt om te bepalen of het bestand op een vrije ruimte geplaatst kan worden schijfmedia en voor een aantal andere doeleinden.

Wanneer u voor het eerst een bestand naar schijf schrijft, en wanneer u wijzigingen in het bestand aanbrengt met behulp van systeem klok(een speciaal programma dat in het besturingssysteem is opgenomen) registreert automatisch de tijd en datum waarop het bestand naar het schijfapparaat is geschreven. Datum- en tijdkenmerken worden gebruikt om de meest recente versies van een bestand te identificeren.

Naast de belangrijkste bestandskenmerken in het MS DOS-besturingssysteem, hebben bestanden nog vier kenmerken: alleen-lezen, systeem, verborgen en archief. Elk van deze attributen heeft precies twee statussen: het attribuut is aan of het attribuut is uitgeschakeld.

Als u het alleen-lezen attribuut inschakelt, betekent dit dat het bestand op geen enkele manier kan worden gewijzigd. Bovendien is de vernietiging van een dergelijk bestand ingewikkeld. Het systeemkenmerk is doorgaans alleen ingeschakeld voor de belangrijkste besturingssysteembestanden. Het verborgen attribuut is ingeschakeld voor die bestanden die, bij het bekijken van de lijst met bestanden die zich op schijf apparaat, zijn besturingssysteemopdrachten niet opgenomen in deze lijst.

Besturingssystemen bieden een manier om het eenvoudiger te maken gezamelijke actie met bestanden. De actie die op een groep bestanden moet worden uitgevoerd, wordt slechts één keer opgegeven, maar samen met de actie wordt niet de volledige naam van een enkel bestand opgegeven, maar een speciale naam waarmee het besturingssysteem alle bestanden in de groep kan herkennen. groep en voer het vervolgens op hen uit Vereiste actie. Deze naam wordt een jokertekennaam, patroon of masker genoemd. De groepsbestandsnaam wordt gevormd door de tekens “*” en “?”.

Het *-teken in een groepsnaam wordt door het besturingssysteem geïnterpreteerd als “een willekeurige reeks naamtekens.” De groepsnaam a* komt dus overeen met alle namen die beginnen met de letter “a”: a1, azbuka, a2z4.

Symbool? wordt door het besturingssysteem gezien als elk enkel teken, dat wil zeggen dat het overeenkomt met precies één willekeurig naamteken. Het patroon otchet?.doc komt bijvoorbeeld overeen met alle namen met de extensie .doc, in de naam waarvan het naamsegment otchet wordt gevolgd door precies één teken, bijvoorbeeld otchet1.doc, otchet4.doc, otchet%.doc, otchet#.doc, enz.

Nog een paar voorbeelden:

Txt – bestanden met een willekeurige naam van twee letters en de extensie .txt;

*.bak – bestanden met elke naam en extensie .bak;

prog1.* – bestanden met de naam progl en eventuele extensie;

*.* – bestanden met elke naam en elke extensie.

Catalogi

Om de inhoud van een bestand te kunnen lezen, moet u de locatie op het schijfapparaat weten. Elk bestand neemt schijfruimte in beslag bepaalde groep sectoren. Daarom kan de locatie van het bestand worden gespecificeerd door het aantal sectoren en tracks op te geven dat door het bestand wordt ingenomen. Deze methode voor het specificeren van de bestandslocatie is echter erg lastig, omdat de gebruiker in dit geval de nummers moet weten van alle schijfsectoren die aan het bestand zijn toegewezen. Om de efficiëntie van de gegevensuitwisseling te vergroten, worden verschillende opeenvolgende sectoren samengevoegd TROS, en de uitwisseling wordt onmiddellijk door de hele groep sectoren uitgevoerd (zie figuur 2.7). Dit uitwisselingsorganisatieschema verhoogt de snelheid van gegevensuitwisseling met harde schijven aanzienlijk. Om te voorkomen dat u drie afzonderlijke nummers opgeeft (number werkoppervlak, tracknummer en sectornummer) als het adres van de sector van waaruit het cluster begint, is er een enkele, doorlopende nummering geïntroduceerd voor alle schijfclusters. Om het cluster te bepalen waarin het bestand begint, volstaat het om slechts één getal op te geven: serienummer clusteren op schijf.

Catalogus wordt een schijfbestandssysteemtabel genoemd die een lijst bevat van alle bestanden die naar deze schijf zijn geschreven. Voor elk bestand geeft deze tabel de waarden van al zijn attributen aan, evenals het nummer van het eerste cluster dat aan het bestand is toegewezen.

Qua doel kan een catalogus worden vergeleken met een inhoudsopgave van een boek, waarin voor elk hoofdstuk het startpaginanummer wordt aangegeven, of met een inventaris van documenten die in een archiefkast zijn opgeslagen. Net als bij een boek kun je, om de positie van een bepaald hoofdstuk te bepalen, aan de hand van de titel van het hoofdstuk in de inhoud van het boek bepalen op welke pagina het begint. Zo vindt het besturingssysteem, aan de hand van de naam van het bestand, in de directory, het cluster waarin het begint.

De analogie tussen de catalogus en de inhoudsopgave in een boek is slechts gedeeltelijk vanwege het feit dat clusters niet als een doorlopende reeks aan een bestand op schijf worden toegewezen, maar verspreid, terwijl in een boek alle pagina's van een hoofdstuk zijn geplaatst. in een rij. Stel je voor dat een hoofdstuk van een boek pagina's 5, 15, 16, 17, 31, 123, 124 beslaat in plaats van pagina's 5, 6, 7, 8, 9, 10, 11 op rij. Deze niet-continue toewijzing van clusters aan bestanden is georganiseerd om het gebruik te optimaliseren vrije ruimte schijf tijdens talrijke vernietigingen en schrijfbewerkingen van bestanden.

Om toch te weten welke clusters en in welke volgorde zijn toegewezen voor het opslaan van een bestand, biedt het bestandssysteem een ​​bestandstoewijzingstabel (FAT). De map bevat alleen het startclusternummer van het bestand. En de FAT-tabel bevat de nummers van alle andere clusters die door het bestand worden ingenomen. In de overgrote meerderheid van de gevallen hoeft de gebruiker niet met de FAT-tabel te werken, aangezien deze wordt ingevuld wanneer het bestand wordt geschreven en automatisch wordt geanalyseerd wanneer het wordt gelezen.

Voor clusters is er sprake van lineaire adressering: alle clusters zijn genummerd van 1 tot 2n (hier is n de FAT-bitcapaciteit). Voor een 16-bits FAT is het aantal clusters op de schijf 216 = 65536. Het is niet moeilijk om te berekenen dat voor schijven van 1 GB een cluster 32 KB groot is.

De grootte van moderne harde schijven is meestal groter dan 1 GB. Bij het opnemen van informatie op dergelijke schijven, een aanzienlijk deel schijfruimte kan verloren gaan, bijvoorbeeld in het geval van 16-bit FAT-bestanden 31 KB en minder dan 1 KB nemen elk dezelfde hoeveelheid schijfruimte in beslag: 32 KB. De ongebruikte ruimte van een cluster wordt "clusteroverhang" genoemd. De verliezen op clusteruitsteeksels zijn des te groter grote hoeveelheid kleine bestanden die op de schijf zijn opgenomen.

De meest natuurlijke manier om de efficiëntie van het gebruik van clusters te vergroten, is door hun omvang te verkleinen. Momenteel is het bestandssysteem FAT32, dat 232 clusters gebruikt.

De hierboven besproken eenvoudige mapstructuur, waarin alle bestanden één gemeenschappelijke lijst vormen, kan alleen bij kleine schijfgroottes een bevredigende werking van het besturingssysteem garanderen en beperkt het totale aantal bestanden dat naar de schijf kan worden geschreven. Op een diskette van 1,44 MB kan de hoofdmap dus informatie bevatten over niet meer dan 224 bestanden. En wanneer de schijfruimte groot genoeg wordt en er dus honderden of duizenden bestanden naar de schijf kunnen worden geschreven, leidt een eenvoudige mapstructuur tot een aanzienlijke vertraging in het zoeken naar een bestand op de schijf, of raakt de map vol.

De map in besturingssystemen heeft een complexere structuur. Willekeurige groepen mapbestanden kunnen worden gecombineerd en gevormd submappen.Op sommige besturingssystemen worden submappen aangeroepen mappen. In feite zijn submappen, net als de hoofdmap, tabellen die zich op schijf bevinden en die informatie bevatten over de bestanden die aan de submap zijn toegewezen. In tegenstelling tot de hoofdmap is de positie van submappen op de schijf niet gebonden aan het systeemgebied. Daarom kunnen de groottes van submappen behoorlijk willekeurig zijn, wat het mogelijk maakt om de beperking op het aantal bestanden dat in een submap is opgegeven, op te heffen.

Submappen worden door gebruikers naar eigen goeddunken aangemaakt. Elke submap heeft zijn eigen naam (meestal zonder extensie), die wordt geselecteerd volgens dezelfde regels als de bestandsnaam.

Het groeperen en opnemen van bestanden in een submap kan op basis van elk criterium worden gedaan. In een aparte submap met de naam WINDOWS (Fig. 3.3) is het bijvoorbeeld raadzaam om alle bestanden met betrekking tot het besturingssysteem te verzamelen. Op dezelfde manier is het raadzaam om alle bestanden die nodig zijn voor de werking van een map in een aparte submap te groeperen teksteditor of spelprogramma. Als meerdere gebruikers beurtelings op een machine werken, is het zinvol om voor elke gebruiker afzonderlijke submappen te organiseren. Geef bijvoorbeeld de submappen een naam: gebruiker1, gebruiker2, gebruiker3,... (gebruiker - gebruiker), waarbij u de bestanden van de eerste gebruiker groepeert in de submap gebruiker1, de tweede in de submap gebruiker2, enz. Naast het wegnemen van de kwantitatieve beperkingen die gepaard gaan met het gebruik van één directory, creëert dit een zekere ordelijkheid bij het opslaan van informatie op schijven.

Alle submappen in de hoofdmap worden geclassificeerd als het eerste niveau. In afb. 3.3 Submappen op het eerste niveau zijn de submappen Windows, user1, Program files. De hoofdmap, in relatie tot de submappen van het eerste niveau die daarin zijn opgenomen, wordt aangeroepen ouderlijk, en submappen in relatie tot de root worden in aanmerking genomen dochterondernemingen of genest.

Elke submap op het eerste niveau is op zijn beurt precies hetzelfde gestructureerd als de hoofdmap. In een submap van het eerste niveau kunnen submappen van het tweede niveau enz. worden georganiseerd. De eigenaar van de submap gebruiker1 kan bijvoorbeeld in deze submap alle rapporten groeperen die hij heeft voorbereid in een aparte submap genaamd otcheti, en bijvoorbeeld bestanden met informatie over zakelijke contacten kunnen worden verzameld in de submap kontakti. Submappen op het eerste niveau worden beschouwd als ouders van de submappen op het tweede niveau die ze bevatten. Submappen op het tweede niveau fungeren als onderliggende mappen van submappen op het eerste niveau.

Rijst. 3.3. Directory-boomstructuur

De structuur van de map lijkt op een boom. De hoofdmap kan worden toegewezen aan de stam van een boom, submappen fungeren als vertakkingen en bestanden zijn de bladeren van deze ‘boom’. Deze directorystructuur heet boomachtig of hiërarchisch.

In besturingssystemen met een grafische interface worden mappen weergegeven als mappen. De afbeelding toont de mappenboom van een van de schijven. Vanaf afb. 3.4 zie je dat er vier mappen in de hoofdmap zijn: A, B, C en D. Tegelijkertijd zijn er in map A mappen A1 en A2. Map C bevat de mappen C1 en C2. In map A1 bevindt zich map A11 en in de laatste map bevindt zich map A111. Een kruisje in de boom geeft aan dat er nog andere mappen in de overeenkomstige mappen staan ​​(er zijn mappen in de mappen D en A12 die niet zichtbaar zijn). Deze afbeelding toont geen bestanden die zich in de hoofdmap of in welke map dan ook kunnen bevinden.

Rijst. 3.4. Mappen als mappen

Het pad naar het bestand

Het besturingssysteem zoekt naar een bestand in een map met de volledige naam. Dit betekent dat één directory of subdirectory er in principe niet twee kan bevatten diverse bestand met dezelfde naam . We herinneren u eraan dat de naam bestaat uit de bestandsnaam en de extensie ervan. Het is ook niet toegestaan ​​om twee geneste submappen met dezelfde naam in één map of submap te hebben.

Directory's of submappen mogen bestanden of onderliggende submappen met dezelfde naam bevatten. Maar dan is de bestandsnaam niet voldoende om eenduidig ​​het gewenste bestand aan te duiden. Om bestanden met dezelfde naam te onderscheiden, is het ook noodzakelijk om de submappen aan te geven waarin ze zich bevinden. Maar in het algemeen moet u niet slechts één submap opgeven, maar de hele keten van submappen, die moet worden gevolgd van de hoofdmap tot de submap met het bestand dat u zoekt om bij het gewenste bestand te komen en te bepalen zijn locatie.

De reeks namen van submappen die moeten worden doorlopen, beginnend bij de hoofdmap en eindigend met de submap die het bestand bevat, heet pad of route naar het bestand.

In MS DOS- en Windows-besturingssystemen wordt de hoofdmap in het pad aangegeven door het teken \. Hetzelfde symbool scheidt de namen van submappen in de keten van elkaar, evenals de bestandsnaam van de naam van de submap waarin deze zich bevindt. Dit symbool wordt backslash genoemd.

Voor bestanden die zich in de hoofdmap bevinden (zie Figuur 3.3), is het pad dus alleen de hoofdmapaanduiding \, en worden de bestanden als volgt gespecificeerd:

Het bestand in de submap user1 heeft het pad \user1:

\gebruiker1\afbeelding.bmp.

En het pad naar bestanden uit de submap kontakti moet de namen van beide submappen bevatten - \user1\kontakti:

\user1\kontakti\ivanov.doc,

\user1\kontakti\postavki.txt

Paden kunnen niet alleen voor bestanden worden opgegeven, maar ook voor submappen. Voor de submap kontakti is het pad dus \user1.

Omdat uw computer meerdere verschillende schijfapparaten bevat, moet u, om een ​​bestand uniek te kunnen identificeren, opgeven op welk apparaat het zich bevindt. Dit kunt u doen door de naam op te geven van het schijfapparaat dat het bestand bevat. De naam van het apparaat wordt meestal vóór het pad naar het bestand geplaatst. Volledige bestandsnaam (bestandsspecificatie) bevat

ü toestelnaam,

ü pad naar het bestand,

ü bestandsnaam.

<имя носителя>\<имя каталога-1>\...\<имя каталога-N>\<собственное имя файла>.

Als bijvoorbeeld een map waarvan de structuur wordt weergegeven in Fig. 3.3 bevindt zich op de C: harde schijf, dan ziet de volledige specificatie van het postavki.txt-bestand er als volgt uit:

C:\gebruiker1\kontakti\postavki.txt

Als deze map is ingeschakeld diskette, dat wil zeggen op schijfapparaat A:, dan wordt de specificatie als volgt geschreven:

A:\gebruiker1\kontakti\postavki.txt

Een volledige bestandsspecificatie identificeert volledig en ondubbelzinnig het gewenste bestand, wat het besturingssysteem nodig heeft om gebruikersopdrachten nauwkeurig uit te voeren. Als er ook maar de kleinste fout wordt gemaakt in de invoer van de bestandsspecificatie, bijvoorbeeld als er minstens één teken ontbreekt of vervormd is, zal het besturingssysteem zo'n bestand niet kunnen vinden.

Algemene informatie over bestandssystemen

Windows 2000 ondersteunt de volgende bestandssystemen: FAT, FAT32 en NTFS. Deze sectie geeft een kort overzicht van deze bestandssystemen. De keuze van het bestandssysteem wordt beïnvloed door de volgende factoren:

Het doel waarvoor de computer bedoeld is.

Hardware-platform.

Aantal harde schijven en hun capaciteit.

Beveiligingsvereisten.

Applicaties die in het systeem worden gebruikt

Windows 2000 ondersteunt gedistribueerd bestandssysteem(Gedistribueerd Bestandssysteem, DFS) en bestandssysteem versleutelen(Versleuteling van bestandssysteem, EFS). Hoewel DFS en EPS "bestandssystemen" worden genoemd, zijn het geen bestandssystemen in de strikte zin van het woord. DFS is dus een uitbreiding van een netwerkservice waarmee u netwerkbronnen die zich in partities met verschillende bestandssystemen bevinden, kunt combineren tot één logisch volume. Wat EPS betreft, het is een add-on voor NTFS die mogelijkheden voor gegevenscodering toevoegt aan NTFS.

Bestandssystemen FAT en FAT32

FAT (in dit hoofdstuk meestal FAT 16 genoemd) is een eenvoudig bestandssysteem dat is ontworpen voor kleine schijven en eenvoudige structuren catalogi. De naam komt van de naam van de methode die wordt gebruikt om bestanden te ordenen: de File Allocation Table (FAT). Deze tabel bevindt zich aan het begin van het deel. Om het volume te beschermen, worden er twee kopieën van FAT op het volume opgeslagen. Als het eerste exemplaar van FAT beschadigd is

schijfhulpprogramma's (zoals Scandisk) kunnen de tweede kopie gebruiken om het volume te herstellen. De bestandstoewijzingstabel en de hoofdmap moeten zich op strikt vaste adressen bevinden, zodat de bestanden die nodig zijn om het systeem te starten correct worden gelokaliseerd.

Qua constructie lijkt FAT op de inhoudsopgave van een boek, omdat het besturingssysteem het gebruikt om naar een bestand te zoeken en de clusters te bepalen die dit bestand op de harde schijf in beslag neemt. Microsoft heeft FAT oorspronkelijk ontwikkeld om bestanden op diskettes te beheren, en heeft het pas daarna overgenomen als standaard voor schijfbeheer in MS-DOS. Aanvankelijk werd een 12-bits versie van FAT (genaamd FAT12) gebruikt voor diskettes en kleine harde schijven (minder dan 16 MB). In MS-DOS v. 3.0 introduceerde een 16-bits versie van PAT voor grotere schijven. Tot op heden wordt FAT 12 gebruikt op zeer kleine media (of op zeer oude schijven). Alle 3,5-inch diskettes van 1,44 MB zijn bijvoorbeeld geformatteerd als FAT16 en alle 5,25-inch diskettes zijn geformatteerd als FAT12.

Een volume dat is geformatteerd onder FAT12 en FAT16 wordt gemarkeerd volgens clusters. De standaardclustergrootte wordt bepaald door de volumegrootte (meer informatie over clustergroottes vindt u verderop in dit hoofdstuk). De bestandslocatietabel en de back-up ervan bevatten de volgende informatie over elk volumecluster:

Ongebruikt (cluster is niet in gebruik).

Cluster in gebruik door een bestand (het cluster wordt gebruikt door een bestand).

Slecht cluster (slecht cluster).

Laatste cluster in een bestand.

De hoofdmap bevat vermeldingen voor elk bestand en elke map in de hoofdmap. Het enige verschil tussen de hoofdmap en de andere is dat deze een duidelijk gedefinieerde ruimte op de schijf in beslag neemt en een vaste grootte heeft (niet meer dan 512 vermeldingen voor een harde schijf; voor diskettes wordt deze grootte bepaald door hun capaciteit).

Naam (in 8.3-formaat).

Attribuutbyte (8 bits bruikbare informatie, die hieronder in detail wordt beschreven).

Aanmaaktijd (24 bits).

Aanmaakdatum (16 bits).

datum laatste toegang(16 bits).

Laatste wijzigingstijd (16 bits).

Datum van de laatste wijziging (16 bits).

Nummer van de startcluster van het bestand in de bestandslocatietabel (16 bits).

Bestandsgrootte (32 bits).

De FAT-mapstructuur heeft geen duidelijke organisatie en bestanden krijgen de eerste beschikbare clusteradressen op het volume toegewezen. Het startclusternummer van het bestand is het adres van het eerste cluster dat door het bestand wordt bezet in de bestandslocatietabel. Elk cluster bevat een verwijzing naar het volgende cluster dat door het bestand wordt gebruikt, of een indicator (OxFFFF) die aangeeft dat het gegeven cluster het laatste cluster van het bestand is.

Mapinformatie wordt gebruikt door besturingssystemen die het FAT-bestandssysteem ondersteunen. Bovendien kan Windows 2000 mappen opnemen aanvullende tijdelijke informatie(tijdstempels). Deze extra tijdelijke kenmerken geven aan wanneer het bestand is gemaakt en wanneer het voor het laatst is geopend. In de eerste plaats worden aanvullende attributen gebruikt door POSIX-applicaties.

Bestanden op schijven hebben 4 kenmerken die door de gebruiker opnieuw kunnen worden ingesteld en ingesteld: Archief, Systeem, Verborgen en Alleen-lezen.

In Windows NT gebruiken vanaf versie 3.5 bestanden die op FAT-volumes zijn gemaakt of hernoemd, attribuutbits om lange bestandsnamen te ondersteunen op een manier die niet in strijd is met de volumetoegangsmethoden die worden gebruikt door de MS-DOS- en OS/2-besturingssystemen. Voor een bestand met een lange naam genereert Windows NT/2000 een korte naam in 8.3-formaat. Naast dit standaardelement maakt Windows NT/2000 een of meer extra vermeldingen voor het bestand, één voor elke 13 tekens van de lange naam. Elk van deze extra vermeldingen bevat het overeenkomstige deel van de lange bestandsnaam in Unicode-indeling. Windows NT/2000 stelt aanvullende gegevens in voor volumekenmerken, evenals een verborgen alleen-lezen systeembestand, zodat

Als u ze markeert als onderdeel van een lange bestandsnaam, negeren MS-DOS en OS/2 doorgaans mapvermeldingen waarin al deze kenmerken zijn ingesteld, zodat dergelijke vermeldingen voor hen onzichtbaar zijn. In plaats daarvan hebben MS-DOS en OS/2 toegang tot het bestand met de standaard korte bestandsnaam in 8.3-formaat.

Windows NT ondersteunt vanaf versie 3.5 lange bestandsnamen op FAT-volumes. Deze standaardoptie kan worden uitgeschakeld door de registerwaarde Win31FileSystem, die deel uitmaakt van de volgende registersleutel, in te stellen op 1:

HKEY_LOCAL_MACH IN E\System\CiirrentControlSet\Control\FileSystem

Als u deze waarde instelt, voorkomt u dat Windows NT bestanden met lange namen maakt op FAT-volumes, maar heeft dit geen invloed op lange namen die al zijn gemaakt.

In Windows NT/2000 werkt FAT16 precies hetzelfde als in MS-DOS, Windows 3.1x en Windows 95/98. Ondersteuning voor dit bestandssysteem is opgenomen in Windows 2000 omdat het compatibel is met de meeste besturingssystemen van andere softwareleveranciers. Bovendien biedt het gebruik van FAT16 de mogelijkheid om eerdere versies van Windows-besturingssystemen te upgraden naar Windows 2000.

Het 32-bits FAT32-bestandssysteem werd geïntroduceerd met de release van Windows 95 OSR2 en wordt ondersteund in Windows 98 en Windows 2000. Het biedt optimale toegang tot harde schijven, cd-roms en netwerkbronnen, waardoor de snelheid en prestaties van alle I/O-bewerkingen toenemen. FAT32 is een verbeterde versie van FAT, ontworpen voor gebruik op volumes groter dan 2 GB.

Een volume dat is geformatteerd voor het gebruik van FAT32, wordt, net als een FAT16-volume, in clusters verdeeld. De standaardclustergrootte wordt bepaald door de volumegrootte. In tafel Figuur 7.1 toont een vergelijking van clustergroottes voor FAT16 en FAT32, afhankelijk van de schijfgrootte.

Om maximale compatibiliteit met bestaande applicaties, netwerken en apparaatstuurprogramma's te garanderen, werd FAT32 geïmplementeerd met een minimum aan mogelijke wijzigingen aan de architectuur en interne datastructuren. Alle Microsoft-schijfhulpprogramma's (Format, FDISK, Defrag en ScanDisk) zijn opnieuw ontworpen om FAT32 te ondersteunen. Daarnaast doet Microsoft veel werk om toonaangevende fabrikanten van apparaatstuurprogramma's en schijfhulpprogramma's te ondersteunen bij de ondersteuning van FAT32 in hun producten. In tafel 7.2 Er wordt geprobeerd de kenmerken van FAT16 en FAT32 met elkaar te vergelijken.

Bestand NTFS-systeem

Het Windows NT-bestandssysteem (NTFS) biedt een combinatie van prestaties, betrouwbaarheid en efficiëntie die niet mogelijk is met een van de FAT-implementaties (zowel FAT16 als FAT32). De belangrijkste ontwerpdoelen van NTFS waren het bieden van snelle prestaties van standaardbestandsbewerkingen (inclusief lezen, schrijven, zoeken) en het bieden van extra mogelijkheden, waaronder het repareren van een beschadigd bestandssysteem op extreem grote schijven.

NTFS beschikt over beveiligingsfuncties die gegevenstoegangscontrole en eigenaarsrechten ondersteunen, die een cruciale rol spelen bij het waarborgen van de integriteit van essentiële vertrouwelijke gegevens. Mappen en NTFS-bestanden kunnen toegangsrechten toegewezen krijgen, ongeacht of ze gedeeld zijn of niet. NTFS is het enige bestandssysteem in Windows NT/2000 waarmee u toegangsrechten aan individuele bestanden kunt toewijzen. Als een bestand echter van een NTFS-partitie of -volume naar een FAT-partitie of -volume wordt gekopieerd, gaan alle machtigingen en andere unieke kenmerken die inherent zijn aan NTFS verloren.

Het NTFS-bestandssysteem gebruikt, net als FAT, clusters als de fundamentele eenheid van schijfruimte. In NTFS is de standaardclustergrootte (als deze niet is opgegeven, opdracht formatteren, en ook niet in een handomdraai Schijfbeheer) hangt af van de volumegrootte. Als u het opdrachtregelprogramma FORMAT gebruikt om een ​​NTFS-volume te formatteren, dan juiste maat cluster kan als parameter voor deze opdracht worden opgegeven. De standaardclustergroottes worden weergegeven in de tabel. 7.3.

Het formatteren van een volume voor NTFS resulteert in het maken van meerdere systeembestanden En hoofdbestandstabel(Masterbestandstabel, MFT). MFT bevat informatie over alle bestanden en mappen die aanwezig zijn op een NTFS-volume. NTFS is een objectgeoriënteerd bestandssysteem dat alle bestanden behandelt als objecten met attributen. Bijna alle objecten op een volume zijn bestanden, en alles wat zich in een bestand bevindt zijn attributen, inclusief gegevensattributen, beveiligingsattributen en bestandsnaamattributen. Elke bezette sector op een NTFS-volume behoort tot een bestand. Een deel van het bestand bestaat zelfs uit metadata van het bestandssysteem (informatie die een beschrijving is van het bestandssysteem zelf).

In Windows 2000 werd een nieuwe versie van NTFS geïntroduceerd: NTFS 5.0. Dankzij de nieuwe gegevensstructuren die bij deze implementatie worden geleverd, kunt u profiteren van de nieuwe functies van Windows 2000, zoals schijfquota per gebruiker, bestandsversleuteling, het volgen van links, overgangspunten(knooppunten), ingebouwde eigenschappensets(oorspronkelijk

eigenschappensets). Bovendien kunt u extra schijfruimte toevoegen aan NTFS 5.0-volumes zonder opnieuw op te starten. Nieuwe functies van NTFS 5.0 worden weergegeven in de tabel. 7.4.

NTFS- beste keuze voor het werken met grote volumes. Er moet rekening mee worden gehouden dat als er hogere eisen aan het systeem worden gesteld (waaronder het garanderen van de veiligheid en het gebruik van een effectief compressie-algoritme), sommige daarvan alleen kunnen worden geïmplementeerd met met behulp van NTFS. Daarom is het in sommige gevallen noodzakelijk om NTFS te gebruiken, zelfs op kleine volumes.

Beperkingen van het bestandssysteem en compatibiliteitsproblemen

De onderstaande tabellen (tabellen 7.5 en 7.6) geven een samenvatting van de compatibiliteit van NTFS- en FAT-bestandssystemen, evenals de beperkingen die aan elk van deze bestandssystemen zijn opgelegd.

Tafel

Het bestandssysteem bepaalt hoe gegevens op de schijf worden opgeslagen en welke principes van toegang tot opgeslagen informatie kunnen worden gebruikt bij het lezen ervan.

We zijn eraan gewend informatie op onze pc waar te nemen in de vorm van specifieke bestanden, netjes (of niet zo :)) geordend in mappen. Ondertussen werkt uw computer met gegevens volgens een heel ander principe. Er zijn geen solide bestanden ervoor op de harde schijf. Het “ziet” alleen duidelijk geadresseerde sectoren met bytecode. Bovendien wordt de code van één bestand niet altijd in aangrenzende sectoren opgeslagen (zogenaamde datafragmentatie).

Hoe ‘begrijpt’ een computer waar hij bijvoorbeeld naar onze moet zoeken Tekstdocument, die bijvoorbeeld op het bureaublad ligt? Het blijkt dat hij hiervoor verantwoordelijk is bestandssysteem harde schijf. En vandaag zullen we ontdekken welke bestandssystemen er zijn en wat hun kenmerken zijn.

Wat is een bestandssysteem

Om te begrijpen wat een bestandssysteem is, kun je het beste de analogieënmethode gebruiken. Laten we ons dat voorstellen HDD- dit is een soort doos waarin veelkleurige kubussen worden bewaard. Deze kubussen zijn delen van verschillende bestanden die zijn opgeslagen in cellen van beperkte grootte, genaamd clusters. Ze kunnen eenvoudig op een hoop worden gestapeld of in een bepaalde volgorde worden geplaatst. Dus als deze voorwaardelijke kubussen niet op een chaotische stapel worden opgeslagen, maar in overeenstemming met een of andere logica, kunnen we praten over de aanwezigheid van een soort analoog van een bestandssysteem.

Het bestandssysteem bepaalt de volgorde waarin gegevens op de schijf worden opgeslagen en de principes voor toegang daartoe; het type bestandssysteem hangt echter grotendeels af van het type medium. Het is bijvoorbeeld duidelijk dat voor een magneetband die het opnemen van alleen opeenvolgende gegevensblokken ondersteunt, alleen een bestandssysteem met één niveau met sequentiële toegang tot informatieclusters geschikt is, en voor een moderne SSD-schijf - elk multi-niveau met willekeurige toegang:

Gebaseerd op het principe van de volgorde van het opslaan van datablokken, kunnen bestandssystemen, zoals we al hebben gezien, worden onderverdeeld in systemen die clusters met bestandsfragmenten opslaan opeenvolgend of willekeurig. Wat de niveaus betreft, kan de FS worden onderverdeeld in enkel niveau En boomachtig(meerdere niveaus).

In het eerste geval worden alle bestanden weergegeven als een enkele platte lijst, en in het tweede geval als een hiërarchische lijst. In dit geval is het investeringsniveau in de regel onbeperkt, en de vertakkingen komen ofwel van slechts één ("root" in UNIX) of van verschillende hoofddirectory's (logische schijven in Windows):

Kenmerken van bestandssystemen omvatten ook de aanwezigheid van verschillende mechanismen die de datastructuur tegen fouten beschermen. Een van de meest moderne mechanismen het garanderen van fouttolerantie van de FS is loggen. Hiermee kunt u alle acties die met bestanden worden uitgevoerd, vastleggen in speciale servicebestanden (ze worden “logs” of “logs” genoemd).

Loggen kan compleet, waarbij voor elke bewerking niet alleen een back-up wordt gemaakt van de status van de clusters, maar ook van alle opgenomen gegevens. Dit type houtkap wordt vaak gebruikt verschillende bases gegevens, maar het vertraagt ​​het systeem aanzienlijk en vergroot de omvang van de logboeken (in feite slaan de logboeken een volledige back-up op van het volledige bestandssysteem met al zijn gegevens).

Veel vaker gelogd alleen logische bewerkingen en (optioneel) de status van de bestandssysteemclusters. Dat wil zeggen dat het logboek alleen registreert dat bijvoorbeeld een bestand met de naam "file.txt" met een grootte van 52 KB naar die en die clusters is geschreven. De inhoud van het bestand zelf verschijnt niet in het logbestand. Met deze aanpak kunt u duplicatie van gegevens voorkomen, het proces van het werken met bestanden versnellen en de grootte van het logboek zelf aanzienlijk verkleinen. Het enige nadeel van deze manier van journaliseren is dat als er een fout optreedt, de gegevens die worden geschreven verloren kunnen gaan (aangezien er geen kopie van is), maar dat de status van het bestandssysteem zelf operationeel blijft.

Opmaak

Omdat we het hebben over bestandssystemen in de context van moderne computers met hun harde of SSD-schijven, zullen we meer aandacht besteden aan bestandssystemen met meerdere niveaus met willekeurige toegang tot clusters. Meest populair binnen computer wereld vandaag zijn: FAT32, NTFS, exFAT, ext3/ext4, ReiserFS en HFS+.

Het wijzigen van het bestandssysteem op de schijf wordt bereikt door opmaak. Het voorziet in de creatie op het niveau van de harde schijf in de initiële sector van speciale servicelabels die de principes van gegevenstoegang definiëren. In dit geval worden clusters met bestaande gegevens tijdens het formatteren gewoonlijk gewist of gemarkeerd als leeg en beschikbaar voor overschrijven. Uitzonderingen zijn speciale gevallen conversie van bestandssysteem(bijvoorbeeld van FAT32 naar NTFS), waarbij de gehele datastructuur behouden blijft.

Voor het formatteren kunt u standaard besturingssysteemtools gebruiken (bijvoorbeeld console Linux-opdrachten of contextmenu schijf in Windows), functies beschikbaar op voorbereidende fase OS-installatie, of speciale programma's. Het enige waar u rekening mee moet houden wanneer software-oplossing Dit betekent dat uw besturingssysteem het door u gekozen bestandssysteem mogelijk niet ondersteunt zonder extra stuurprogramma's te installeren (bijvoorbeeld ext3/4 in Windows):

Er is ook een concept opmaak op laag niveau. Aanvankelijk betekende dit het schoonmaken van de schijf en het schrijven van speciale service-informatie naar de clusters om de leeskoppen uit te lijnen. Voor modern harde schijven zo'n functie aan programma niveau wordt niet langer aangeboden (dit kan alleen worden gedaan met behulp van speciale apparatuur), maar het concept van opmaak op laag niveau is behouden gebleven, hoewel het enigszins is getransformeerd.

Dit gebeurt nu met behulp van speciale software(HDD Low Level Format Tool voor Windows) of opdrachten (DD voor Linux). Bij gebruik ervan worden alle harde schijfclusters overschreven met nullen en wordt eventuele markup volledig vernietigd. Hierna verdwijnt het bestandssysteem in wezen en verschijnt het in Windows als RAUW. Om na deze formattering toegang te krijgen tot de schijf, moet u deze formatteren met een van de beschikbare traditionele bestandssystemen op een hoger niveau.

Kenmerken van bestandssystemen

Laten we nu eens kijken naar enkele kenmerken van de meest voorkomende bestandssystemen.

FAT32

Een van de oudste schijfbestandssystemen die nog steeds veel wordt gebruikt, is FAT32(afgekort Engels: “File Allocation Table” - “File Allocation Table”). Vanwege de prevalentie ervan wordt het ondersteund Maximaal nummer allerlei apparatuur, van autoradio's tot krachtig moderne computers. De meeste flashdrives die tegenwoordig worden verkocht, zijn ook geformatteerd in FAT32.

Deze FS verscheen voor het eerst in Windows 95 OSR2 in 1996 en werd een logische ontwikkeling van het nog eerdere FAT16 (1983). Een van de belangrijkste redenen voor de overgang naar een nieuw bestandssysteem was de opkomst van ruime (op dat moment) harde schijven met een capaciteit van meer dan 2 GiB (gibibyte - een nauwkeurigere versie van gigabyte (109) - 230 bytes) ( de maximaal mogelijke partitiegrootte in FAT16). FAT32 stond maximaal 268.435.445 clusters toe van maximaal 32 KB, wat overeenkomt met 8 TiB per volume. Als de clustergrootte echter standaard is (512B), zal de maximale volumegrootte slechts iets meer dan 127 GB bedragen.

De basis van FAT32 is, zoals de naam al doet vermoeden, bestandstabel. Het slaat records op van bestaande bestanden, evenals het tijdstip waarop ze zijn gemaakt en voor het laatst zijn geopend. Er is geen journaling, dus lees-/schrijfprocessen in dit bestandssysteem zijn sneller dan bijvoorbeeld in NTFS, dat completere logbestanden bijhoudt. Precies om de reden goed optreden FAT32 wordt nog steeds veel gebruikt.

Het grootste nadeel van FAT32 is dit moment De maximale bestandsgrootte is 4 GiB. Bestanden die deze drempel overschrijden, moeten in delen worden opgesplitst, waardoor ze moeilijk toegankelijk zijn. Bovendien heeft FAT32 nog enkele andere beperkingen Windows-omgeving. Met standaardtools kunt u bijvoorbeeld geen partities maken die groter zijn dan 32 GB. Daarom zullen flashdrives van 64 GB of meer moeten worden geformatteerd met speciale software of op Linux.

Hoewel de toegang tot de media in dit geval behouden blijft, wordt deze echter belemmerd door “remmen” bij zowel het lezen als schrijven van gegevens. Daarom is het bij gebruik van schijven groter dan 32 GB beter om deze in andere bestandssystemen te formatteren, zoals exFAT of NTFS.

NTFS

Als Windows-lijn 95/98 zette de tradities van de toen al verouderde operatiekamer voort DOS-systemen, Dat nieuwe lijn NT was aanvankelijk gericht op innovatie. Daarom werd er met de komst van Windows NT 3.1 in 1993 speciaal daarvoor een nieuw bestandssysteem gemaakt NTFS(afgekort als "New Technology File System" - "nieuwe technologie bestandssysteem").

Dit bestandssysteem is nog steeds het belangrijkste voor iedereen moderne versies Omdat Windows een goede werksnelheid biedt, ondersteunt het schijven met een capaciteit van maximaal 16 EiB (exbibyte - 260) (met een maximale clustergrootte van 64 KB) zonder beperkingen op de bestandsgrootte en heeft het een redelijk goede functionaliteit in zijn arsenaal. NTFS is bijvoorbeeld een journalingbestandssysteem en ondersteunt ook de verdeling van gebruikersrollen voor toegang tot individuele gegevens, wat bij FAT32 niet het geval was.

Net als FAT32 is NTFS gebaseerd op een tabel, maar het is een geavanceerdere database en heet MFT(afgekort Engels: "Master File Table" - "master file table"). De rijen in deze tabel komen overeen met bestanden die op een bepaalde partitie zijn opgeslagen, en de kolommen bevatten de kenmerken van deze bestanden (aanmaakdatum, grootte, toegangsrechten, enz.).

Om de fouttolerantie in NTFS te vergroten, USN-tijdschrift(afgekort Engels "Update Sequence Number" - letterlijk "update ordernummer"). Dit logboek registreert, vergelijkbaar met de FAT32-tabel, gegevens over wijzigingen in een bepaald bestand. Als echter alleen het tijdstip van de laatste toegang tot gegevens in de FAT32-tabel werd vastgelegd, wat geen speciale praktische voordelen opleverde, kan de USN besparen vorige staat bestandssysteem, waarmee u het kunt herstellen in geval van storingen.

Een ander kenmerk van NTFS is de ondersteuning ervan alternatieve datastromen(Engels: "Alternatieve gegevensstromen" - ADS). Ze zijn oorspronkelijk bedoeld om onderscheid te maken tussen de uitvoering van verschillende processen. Vervolgens werden ze (in Windows 2000) gebruikt om enkele bestandskenmerken op te slaan (naam van de auteur, pictogram, enz.), vergelijkbaar met hoe dit werd gedaan in HFS vanaf MacOS. In het moderne Windows-alternatief streams kunnen vrijwel alle informatie opslaan. Sommige virussen gebruiken dit zelfs om hun aanwezigheid in het systeem te verbergen.

Het feit is dat alternatieve stromen kan geen leiding nemen Windows Explorer en zijn in wezen onzichtbaar voor gebruikers en de meeste programma's. U kunt ze echter wel bekijken en zelfs gebruiken om bijvoorbeeld gegevens te verbergen met behulp van speciale software. Het is handig om gegevens in alternatieve streams te bekijken met behulp van het NTFS Stream Explorer-programma, en deze te gebruiken om bestanden te verbergen met behulp van Xp-lore:

Van extra functies, die het vermelden waard zijn voor NTFS, zijn ondersteuning voor encryptie, datacompressie, “zachte” en “harde” links naar bestanden (voor mappen bestaat deze optie helaas niet), schijfquota voor verschillende gebruikers systeem, evenals uiteraard differentiatie van rechten op toegang tot bestanden.

NTFS is oorspronkelijk exclusief voor Windows gemaakt, maar wordt tegenwoordig ondersteund door de meeste mediaspelers (flashdrives kunnen er ook in worden geformatteerd), besturingssystemen Linux-systemen en MacOS (zij het met enkele opnamebeperkingen). Het is echter de moeite waard om de zwakken op te merken NTFS-ondersteuning op populaire gameconsoles. Hiervan heeft alleen Xbox One ondersteuning hiervoor.

exFAT

Met de toename van het aantal flashdrives in de tweede helft van de jaren 2000 werd het duidelijk dat het veelgebruikte FAT32-bestandssysteem spoedig zijn potentieel zou uitputten. Het gebruik van gejournaliseerde NTFS voor flashdrives met hun beperkte aantal herschrijfcycli en langzamere werking bleek niet helemaal aan te raden. Daarom bracht hetzelfde Microsoft-bedrijf in 2006 een nieuw bestandssysteem uit exFAT(afgekort Engels "Extended FAT" - "extended FAT") meegeleverd met het besturingssysteem Windows ingebed CE 6.0:

Het werd een logisch vervolg op de ontwikkeling van FAT32 en wordt daarom ook wel eens FAT64 genoemd. De belangrijkste troef van het nieuwe bestandssysteem was het opheffen van de beperkingen op de bestandsgrootte en een verhoging van de theoretische limiet voor schijfpartitie maximaal 16 E&B (zoals in NTFS). Tegelijkertijd behield exFAT, vanwege het gebrek aan journaling, een hoge gegevenstoegangssnelheid en compactheid.

Een ander voordeel van exFAT was de mogelijkheid om de clustergrootte te vergroten tot 32 MB, waardoor de opslag van grote bestanden (bijvoorbeeld video) aanzienlijk werd geoptimaliseerd. Bovendien is de gegevensopslag in exFAT zo georganiseerd dat de processen van fragmentatie en herschrijven van dezelfde clusters worden geminimaliseerd. Dit alles werd opnieuw gedaan om de werking van flashdrives te optimaliseren, waarvoor het bestandssysteem oorspronkelijk was ontwikkeld.

Omdat exFAT een relatief nieuw bestandssysteem is, gelden er enkele beperkingen voor het gebruik ervan. IN Ramen vol de ondersteuning ervan verscheen alleen in Vista SP1 (hoewel er een update is voor Windows XP SP2 - ). MacOS ondersteunt exFAT sinds versie 10.6.5, terwijl voor Linux een aparte driver moet worden geïnstalleerd (sommige distributies hebben deze ingebouwd, andere zijn alleen-lezen).

ext2, ext3 en ext4

Terwijl NTFS in de Windows-omgeving al tientallen jaren de boventoon voert, bestaat er in het Linux-kamp traditioneel een zeer grote verscheidenheid, ook onder de gebruikte bestandssystemen. Het is waar dat er één regel is die standaard door de meeste distributies wordt gebruikt. Dit zijn bestandssystemen van de familie ext(Engelse afkorting "Extended File System" - "extended file system"), die sinds 1992 aanvankelijk speciaal voor Linux werden gemaakt.

De tweede versie wordt het meest gebruikt ext2, dat, net als NTFS, in 1993 verscheen. Het is waar dat ext2, in tegenstelling tot NTFS, geen journaling-bestandssysteem is. Dit is zowel de plus als de min. Het voordeel is dat het een van de snelste bestandssystemen is voor het schrijven van gegevens. Bovendien maakt het gebrek aan logboekregistratie het de voorkeur om het op flashdrives en SSD-schijven te gebruiken. De prijs voor prestaties is een lage fouttolerantie.

Om de stabiliteit van ext2 te verbeteren is in 2001 een verbeterde versie ontwikkeld ext3. Het introduceerde inloggen die kan werken drie modi: “writeback” (alleen metadata van het bestandssysteem wordt geschreven), “ordered” (schrijven naar het journaal gebeurt altijd VOORDAT de FS wordt gewijzigd) en “journal” (een volledige back-up van de metadata en de bestanden zelf die worden gewijzigd).

Anders waren er geen speciale innovaties. En de snelheid van het werk, vergeleken met vorige versie, aanzienlijk afgenomen, dus al in 2006 verscheen er een prototype van de volgende fase van de ontwikkeling van bestandssystemen ext4, waarvan de definitieve release plaatsvond in 2008. Het vierde uitgebreide bestandssysteem behield de journalisering, maar verhoogde de leessnelheid van de gegevens aanzienlijk, die zelfs hoger was dan in ext2!

Naast andere innovaties is het vermeldenswaard de toename van het maximale volume van een schijfpartitie naar 1 EiB (van 32 TiB in ext2 en ext3), een toename van maximumgrootte bestand tot 16 TiB (van 2 TiB in eerdere versies) en het verschijnen van een uitbreidingsmechanisme (van het Engelse "extent" - "space"). Met dit laatste hebt u geen toegang tot afzonderlijke blokken, zoals geïmplementeerd in andere bestandssystemen (en in het bijzonder in ext3), maar tot gecombineerde schijfruimten van sequentiële clusters, totale volume tot 128 MB, wat de prestaties aanzienlijk verbetert en de gegevensfragmentatie vermindert.

Tegenwoordig is ondersteuning voor bestandssystemen van de ext-familie van de ene of de andere versie standaard aanwezig in bijna alle Linux-systemen. Bijna alle systemen die in 2010 en ouder zijn uitgebracht, ondersteunen ext4 om speciale software en/of drivers te installeren.

ReiserFS

Een ander jong en veelbelovend bestandssysteem dat “oorspronkelijk” uit de wereld van Linux komt ReiserFS. Dankzij de inspanningen van het team van de Amerikaanse ontwikkelaar Hans Reiser werd het het eerste gejournaliseerd bestandssysteem waaraan werd toegevoegd Linux-kernel versie 2.4.1 in 2001, net voordat ext3-ondersteuning werd toegevoegd.

Net als ext3, dat erna verscheen, maakte ReiserFS het gebruik ervan zelfs mogelijk Linux vol of gedeeltelijke registratie. In tegenstelling tot ext3 had het echter een grotere toegestane bestandsgrootte (tot 8 TiB versus 2). maximale lengte bestandsnaam gelijk aan 255 tekens, geen bytes (4032 bytes).

Een van de kenmerken van ReiserFS waar gebruikers verliefd op werden, was ook de mogelijkheid om de grootte van een partitie te wijzigen zonder deze te ontkoppelen. Soortgelijke functie ext2 had het niet, maar verscheen later in ext3, al was ReiserFS ook de eerste op dit gebied.

Ondanks een aantal voordelen ten opzichte van alternatieve bestandssystemen van die tijd, was ReiserFS ook niet zonder nadelen. De belangrijkste hiervan zijn onder meer een vrij zwakke fouttolerantie in geval van schade aan de metadatastructuur en een ineffectief defragmentatiealgoritme. Daarom begon men in 2004 met het verbeteren van het bestandssysteem, dat bekend werd als Reiser4.

Toegegeven, ondanks een aantal innovaties, verbeteringen en correcties bleef het nieuwe bestandssysteem voorbehouden aan enkele enthousiastelingen. Feit is dat Hans Reiser in 2006 de moord op zijn eigen vrouw pleegde, in hechtenis werd genomen en later gevangen werd gezet. Dienovereenkomstig werd zijn bedrijf Namesys, dat Reiser4 aan het ontwikkelen was, ontbonden. Sindsdien is de ondersteuning en verfijning van het bestandssysteem uitgevoerd door een groep ontwikkelaars onder toezicht van de Russische ontwikkelaar Eduard Shishkin.

Uiteindelijk is er nog geen ondersteuning voor Reiser4 aan de Linux-kernel toegevoegd, maar ReiserFS is wel beschikbaar. Daarom blijven velen het in verschillende samenstellingen gebruiken als het standaardbestandssysteem.

HFS

Over bestandssystemen gesproken die kenmerkend zijn voor verschillende besturingssystemen, we kunnen niet anders dan MacOS noemen HFS(afgekort Engels: "Hierarchical File System" - "hiërarchisch bestandssysteem"). De eerste versies van dit systeem verschenen in 1985, samen met het besturingssysteem Macintosh-systeem Systeem 1.0:

Naar moderne maatstaven was dit bestandssysteem zeer ineffectief, dus in 1998 werd, samen met MacOS 8.1, de verbeterde versie genaamd HFS+ of Mac OS Uitgebreid, dat tot op de dag van vandaag wordt ondersteund.

Net als zijn voorganger verdeelt HFS+ de schijf (standaard) in blokken van 512 KB, die worden gecombineerd tot clusters die verantwoordelijk zijn voor het opslaan van bepaalde bestanden. De nieuwe FS heeft echter 32-bits adressering (in plaats van 16-bit). Hierdoor kunt u beperkingen op de grootte van het geschreven bestand vermijden en wordt ondersteuning geboden voor een maximale volumegrootte van maximaal 8 E&B (en in de laatste revisies tot 16 E&B).

Andere voordelen van HFS+ zijn loggen (een geheel verborgen volume genaamd HFSJ), evenals multithreading. Bovendien, als alternatieve stromen in NTFS geen bijzonder duidelijke regels hebben over de soorten opgeslagen informatie, worden in HFS+ twee stromen specifiek onderscheiden: een datastroom (slaat de belangrijkste gegevens van bestanden op) en een bronnenstroom (slaat metagegevens van bestanden op).

HFS+ is bijna ideaal voor traditionele HDD's, maar beschikt net als de hierboven besproken ReiserFS niet over de meest effectieve algoritmen om gegevensfragmentatie tegen te gaan. Daarom wordt het, met de verspreiding van SSD-schijven en de introductie ervan in Apple-apparatuur, steeds vaker vervangen door het bestandssysteem dat in 2016 is ontwikkeld APFS(afgekort Engels "Apple File System" - "Apple File System"), dat op het bureaublad verscheen macOS Hoog Sierra (10.13) en mobiel iOS 10.3.

In veel opzichten is APFS vergelijkbaar met exFAT wat betreft het optimaliseren van lees-/schrijfprocessen, maar in tegenstelling tot exFAT beschikt het over journaling, ondersteunt het de distributie van gegevenstoegangsrechten, heeft het verbeterde gegevensversleuteling en compressie-algoritmen, en kan het ook werken met hogere volumes. tot 9 YB groot (niet lachen - "yobibyte") dankzij 64-bits adressering!

Het enige nadeel van APFS is dat het alleen wordt ondersteund moderne technologie Apple en nog niet beschikbaar op andere platforms.

Vergelijking van bestandssystemen

Vandaag hebben we naar veel verschillende populaire bestandssystemen gekeken, dus het zou geen kwaad kunnen om alle gegevens daarover in één tabel samen te vatten:

Kenmerken / FS FAT32 NTFS exFAT ext2 ext4 ReiserFS HFS+ APFS
Jaar van implementatie 1996 1993 2008 1993 2006 2001 1998 2016
Toepassingsgebied ramen verwijderbare schijven, Linux verwijderbare opslag, Windows Vista+, Linux Linux, verwijderbare opslag Linux Linux MacOS MacOS
Maximale bestandsgrootte 4 GiB 16 E&B 16 E&B 2 TiB 16 TiB 8 TiB 16 E&B 9 YiB
Maximale volumegrootte 8 TiB 16 E&B 64 ZiB (zebibyte) 32 TiB 1 E&B 16 TiB 16 E&B 9 YiB
Loggen - + - - + + + +
Beheer van toegangsrechten - + - - + + + +

conclusies

Zoals u kunt zien, heeft elk besturingssysteem zijn eigen optimale bestandssysteem, waardoor u zo efficiënt mogelijk met gegevens kunt werken. Voor Windows is dit bijvoorbeeld NTFS, voor MacOS is dit HFS+ of APFS. De enige uitzonderingen op de regel kunnen als talrijk worden beschouwd Linux-distributies. Er zijn meer dan een dozijn bestandssystemen, elk met zijn eigen voor- en nadelen.

De meeste Windows-gebruikers moeten alleen de drie meest voorkomende FS onthouden: FAT32 - voor kleine flashdrives en oude apparatuur, NTFS - voor de meeste computers en exFAT - voor ruime flashdrives en externe SSD-drives (over de relevantie van formattering systeem schijf exFAT is nog steeds controversieel vanwege het gebrek aan journaling en de grotere vatbaarheid voor mislukkingen).

P.S. Er wordt toestemming verleend om dit artikel vrijelijk te kopiëren en te citeren, op voorwaarde dat er open credit wordt gegeven. actieve koppeling naar de bron en het behoud van het auteurschap van Ruslan Tertyshny.