Bestandssysteem. Wat is dit? Soorten bestandssystemen. Bestandsbewerkingen. Catalogi. Directory bewerkingen. (vijf)

Balashov Instituut (filiaal) van de Saratov State University. NV Tsjernysjevski

Het cursuswerk werd voltooid door een student van groep 142 Efanov A.P.

Balasjov 2010

Invoering

Momenteel staan ​​er gemiddeld enkele tienduizenden bestanden op één schijf. Hoe al deze diversiteit te begrijpen om het dossier nauwkeurig te adresseren? Het doel van het bestandssysteem is een effectieve oplossing voor dit probleem.

De ontwikkeling van bestandssystemen voor personal computers werd bepaald door twee factoren: de opkomst van nieuwe standaarden voor opslagmedia en de toename van eisen aan de kenmerken van het bestandssysteem door applicatieprogramma's (differentiatie van toegangsniveaus, ondersteuning voor lange bestandsnamen in UNICODE-formaat). Aanvankelijk was het voor bestandssystemen van het grootste belang om de snelheid van gegevenstoegang te verhogen en de hoeveelheid opgeslagen service-informatie te minimaliseren. Vervolgens kwam met de komst van snellere harde schijven en een toename van hun volumes de behoefte aan betrouwbaarheid van informatieopslag naar voren, wat leidde tot de behoefte aan redundante gegevensopslag.

De evolutie van het bestandssysteem is direct gekoppeld aan de ontwikkeling van relationele databasetechnologieën. Het bestandssysteem maakte gebruik van de nieuwste ontwikkelingen die zijn ontworpen voor gebruik in het DBMS: transactiemechanismen, gegevensbescherming, een zelfherstellend systeem als gevolg van een storing.

De ontwikkeling van bestandssystemen heeft geleid tot een verandering in het concept van "bestand" van de oorspronkelijke interpretatie als een geordende reeks logische records, naar het concept van een bestand als een object dat een reeks kenmerken heeft die het karakteriseren (inclusief de bestandsnaam, zijn alias, aanmaaktijd en gegevens zelf), geïmplementeerd in NTFS .

In de loop van zijn 20-jarige geschiedenis is het bestandssysteem veranderd van een eenvoudig systeem dat de functies van het beheren van bestanden overnam naar een systeem dat een volwaardig DBMS is met een ingebouwd mechanisme voor logboekregistratie en gegevensherstel.

In tegenstelling tot pogingen om een ​​standaard te introduceren voor een protocol dat de regels beschrijft voor toegang tot externe bestandssystemen (CIFS, NFS), mag men geen vergelijkbare standaard verwachten die bestandssystemen voor harde schijven beschrijft. Dit kan worden verklaard door het feit dat het bestandssysteem op de harde schijf nog steeds een van de belangrijkste onderdelen van het besturingssysteem is dat de prestaties beïnvloedt. Daarom zal elke fabrikant van besturingssystemen ernaar streven om het bestandssysteem "eigen" voor zijn besturingssysteem te gebruiken.

Verdere evolutie van bestandssystemen zal het pad volgen van het verbeteren van de mechanismen voor gegevensopslag, het optimaliseren van de opslag van multimediagegevens en het gebruik van nieuwe technologieën die in databases worden gebruikt (functionaliteit voor het doorzoeken van volledige tekst, het sorteren van bestanden op verschillende attributen).

Bestanden worden geïdentificeerd door namen. Gebruikers geven bestanden symbolische namen, terwijl ze rekening houden met OS-beperkingen voor zowel de gebruikte tekens als de lengte van de naam. Tot voor kort waren deze grenzen erg smal. Dus in het populaire FAT-bestandssysteem wordt de lengte van namen beperkt door het bekende schema 8.3 (8 tekens - de naam zelf, 3 tekens - de naamextensie), en in UNIX System V mag de naam niet meer dan 14 tekens bevatten . Het is echter veel handiger voor de gebruiker om met lange namen te werken, omdat u hiermee het bestand een echte geheugensteun kunt geven, waardoor het zelfs na een voldoende lange tijd mogelijk zal zijn om te onthouden wat dit bestand bevat. Daarom hebben moderne bestandssystemen de neiging om lange symbolische bestandsnamen te ondersteunen. Zo specificeert Windows NT, in het nieuwe NTFS-bestandssysteem, dat een bestandsnaam maximaal 255 tekens lang mag zijn, het afsluitende null-teken niet meegerekend.

De overstap naar lange namen introduceert een compatibiliteitsprobleem met oudere toepassingen die korte namen gebruiken. Om ervoor te zorgen dat toepassingen toegang hebben tot bestanden volgens eerdere conventies, moet het bestandssysteem in staat zijn om equivalente korte namen (aliassen) te bieden voor bestanden met lange namen. Een van de belangrijke taken is dus het probleem van het genereren van geschikte korte namen.

Lange namen worden niet alleen ondersteund door nieuwe bestandssystemen, maar ook door nieuwe versies van bekende bestandssystemen. Windows 95 gebruikt bijvoorbeeld het VFAT-bestandssysteem, een aanzienlijk gewijzigde versie van FAT. Naast vele andere verbeteringen is een van de belangrijkste voordelen van VFAT de ondersteuning van lange namen. Naast het probleem van het genereren van equivalente korte namen, was bij de implementatie van de nieuwe FAT-variant een belangrijke taak het probleem van het opslaan van lange namen, op voorwaarde dat de opslagmethode en gegevensstructuur op de schijf niet fundamenteel zouden veranderen.

Gewoonlijk kunnen verschillende bestanden dezelfde symbolische namen hebben. In dit geval wordt het bestand uniek geïdentificeerd door een zogenaamde samengestelde naam, wat een reeks symbolische directorynamen is. Op sommige systemen kan hetzelfde bestand niet meerdere verschillende namen krijgen, terwijl er op andere systemen geen beperking is. In het laatste geval kent het besturingssysteem een ​​extra unieke naam toe aan het bestand, zodat een één-op-één overeenkomst tussen het bestand en de unieke naam kan worden vastgesteld. De unieke naam is een numerieke identificatie en wordt gebruikt door besturingssysteemprogramma's. Een voorbeeld van zo'n unieke bestandsnaam is het inodenummer op een UNIX-systeem.

Bestand types. Er zijn verschillende soorten bestanden: gewone bestanden, speciale bestanden, directorybestanden.

Gewone bestanden zijn op hun beurt onderverdeeld in tekst en binair. Tekstbestanden bestaan ​​uit tekenreeksen die worden weergegeven in ASCII-code. Dit kunnen documenten zijn, broncodes van programma's, enz. Tekstbestanden kunnen op het scherm worden gelezen en op een printer worden afgedrukt. Binaire bestanden gebruiken geen ASCII-codes, ze hebben vaak een complexe interne structuur, zoals de objectcode van een programma of een archiefbestand. Alle besturingssystemen moeten ten minste één type bestand kunnen herkennen: hun eigen uitvoerbare bestanden.

Speciale bestanden zijn bestanden die zijn gekoppeld aan I/O-apparaten waarmee de gebruiker I/O-bewerkingen kan uitvoeren met behulp van normale opdrachten voor het schrijven of lezen van bestanden. Deze commando's worden eerst verwerkt door de bestandssysteemprogramma's en vervolgens, in een bepaald stadium van het verzoek, worden ze door het besturingssysteem omgezet in commando's om het corresponderende apparaat te besturen. Speciale bestanden, evenals I / O-apparaten, zijn onderverdeeld in blokgericht en bytegericht.

Een directory is aan de ene kant een groep bestanden die door de gebruiker is gecombineerd op basis van enkele overwegingen (bijvoorbeeld bestanden die spelprogramma's bevatten of bestanden die samen één softwarepakket vormen), en aan de andere kant is het een bestand met systeeminformatie over een groep bestanden, de bestanddelen ervan. De directory bevat een lijst van bestanden die erin zijn opgenomen en er wordt een overeenkomst tot stand gebracht tussen de bestanden en hun kenmerken (attributen).

Verschillende bestandssystemen kunnen verschillende kenmerken als attributen gebruiken, bijvoorbeeld:

toestemming informatie,

wachtwoord om toegang te krijgen tot het bestand,

bestandseigenaar,

bestandsmaker,

alleen-lezen vlag

teken "verborgen bestand",

teken "systeembestand",

teken "archiefbestand",

teken "binair/teken",

markeer "tijdelijk" (verwijder na het einde van het proces),

blok teken,

recordlengte,

een aanwijzer naar een sleutelveld in het item,

sleutel lengte,

tijden van creatie, laatste toegang en laatste wijziging,

huidige bestandsgrootte,

maximale bestandsgrootte.

Directory's kunnen direct de waarden van bestandskenmerken bevatten, zoals in het MS-DOS-bestandssysteem, of verwijzen naar tabellen die deze kenmerken bevatten, zoals geïmplementeerd in UNIX (Figuur 1). Directory's kunnen een hiërarchische structuur vormen vanwege het feit dat een directory op een lager niveau kan worden opgenomen in een directory op een hoger niveau (Figuur 2).

De directoryhiërarchie kan een boomstructuur of een netwerk zijn. Directory's vormen een boomstructuur als een bestand slechts in één directory mag komen, en een netwerk - als een bestand meerdere directory's tegelijk kan binnengaan. In MS-DOS-mappen

Afbeelding. 1 Directorystructuur: a - MS-DOS directory-invoerstructuur (32 bytes);

b - UNIX directory-invoerstructuur

Figuur 2 Logische indeling van het bestandssysteem

a - één niveau; b - hiërarchisch (boom); c - hiërarchisch (netwerk)

vormen een boomstructuur, en in UNIX is het een netwerkstructuur.Net als elk ander bestand heeft een map een symbolische naam en wordt uniek geïdentificeerd door een samengestelde naam die een reeks symbolische namen bevat van alle mappen waardoor het pad van de root naar deze map komt voorbij.

De programmeur houdt zich bezig met de logische organisatie van een bestand en stelt het bestand voor als logische records die op een bepaalde manier zijn georganiseerd. Een logische record is het kleinste gegevenselement waarmee een programmeur kan werken bij uitwisseling met een extern apparaat. Ook als de fysieke uitwisseling met het apparaat in grote eenheden plaatsvindt, geeft het besturingssysteem de programmeur toegang tot een aparte logische ingang. Figuur 3 toont verschillende diagrammen van de logische indeling van het bestand. Records kunnen een vaste lengte of variabele lengte hebben.

Afbeelding 3 Manieren om bestanden logisch te ordenen

Records kunnen sequentieel in het bestand worden gerangschikt (sequentiële organisatie) of in een meer complexe volgorde, met behulp van zogenaamde indextabellen, die snelle toegang tot een enkel logisch record (index-sequentiële

organisatie).

Een speciaal veld van het record, een sleutel genaamd, kan worden gebruikt om een ​​record te identificeren. In UNIX- en MS-DOS-bestandssystemen heeft een bestand de eenvoudigste logische structuur: een reeks records van één byte.

De fysieke organisatie van een bestand beschrijft de regels voor de locatie van een bestand op een extern opslagapparaat, in het bijzonder op een schijf. Het bestand bestaat uit fysieke records - blokken. Een blok is de kleinste gegevenseenheid die een extern apparaat met RAM uitwisselt. Continue toewijzing is de eenvoudigste variant van fysieke organisatie (Figuur 2.34, a), waarbij een bestand wordt voorzien van een reeks schijfblokken die één doorlopend gedeelte van schijfgeheugen vormen. Om in dit geval het bestandsadres te specificeren, volstaat het om alleen het nummer van het initiële blok op te geven. Een ander voordeel van deze methode is de eenvoud. Maar er zijn ook twee belangrijke nadelen. Ten eerste is tijdens het maken van een bestand de lengte niet van tevoren bekend, wat betekent dat niet bekend is hoeveel geheugen voor dit bestand moet worden gereserveerd, en ten tweede treedt bij deze plaatsingsvolgorde onvermijdelijk fragmentatie op en wordt geen schijfruimte gebruikt efficiënt, aangezien individuele kleine percelen (minimaal 1 blok) ongebruikt kunnen blijven.

De volgende manier van fysieke organisatie is plaatsing in de vorm van een gekoppelde lijst met schijfgeheugenblokken (Figuur 4, b). Bij deze methode staat aan het begin van elk blok een verwijzing naar het volgende blok. In dit geval kan het bestandsadres ook worden gegeven door een enkel nummer - het nummer van het eerste blok. In tegenstelling tot de vorige methode kan elk blok aan een bestand worden geketend, dus er is geen fragmentatie. Het bestand kan tijdens zijn bestaan ​​veranderen, waardoor het aantal blokken toeneemt. Het nadeel is de moeilijkheid om toegang tot een willekeurig gespecificeerde locatie van het bestand te implementeren: om het vijfde bestandsblok in volgorde te lezen, is het noodzakelijk om de eerste vier blokken opeenvolgend te lezen, waarbij de reeks bloknummers wordt gevolgd. Bovendien is met deze methode de hoeveelheid bestandsgegevens in één blok geen macht van twee (één woord wordt gebruikt voor het nummer van het volgende blok), en veel programma's lezen gegevens in blokken die een macht van twee zijn qua grootte.

Figuur 4 Fysieke organisatie van het bestand

a - doorlopende plaatsing; b - gekoppelde lijst met blokken;

c - gekoppelde lijst van indices; d - lijst met bloknummers

Een populaire techniek, die bijvoorbeeld wordt gebruikt in het MS-DOS FAT-bestandssysteem, is om een ​​gekoppelde lijst met inodes te gebruiken. Elk blok is gekoppeld aan een element - een index. Indexen bevinden zich in een apart gedeelte van de schijf (in MS-DOS is dit de FAT-tabel). Als een bepaald blok aan een bepaald bestand is toegewezen, dan bevat de index van dit blok het nummer van het volgende blok van dit bestand. Met een dergelijke fysieke organisatie blijven alle voordelen van de vorige methode behouden, maar beide genoemde nadelen zijn verwijderd: ten eerste, om toegang te krijgen tot een willekeurige plaats in het bestand, volstaat het om alleen het indexblok te lezen, het vereiste aantal bestanden te tellen blokken langs de keten en bepalen het nummer van het gewenste blok, en ten tweede nemen de bestandsgegevens het hele blok in beslag en hebben daarom een ​​​​volume gelijk aan een macht van twee.

Overweeg ten slotte om de fysieke locatie van een bestand op te geven door simpelweg de bloknummers op te sommen die door dat bestand worden ingenomen. UNIX gebruikt een variant van deze methode om ervoor te zorgen dat de adreslengte vast is, ongeacht de bestandsgrootte. 13 velden zijn toegewezen voor het opslaan van het bestandsadres. Als de bestandsgrootte kleiner is dan of gelijk is aan 10 blokken, dan worden de nummers van deze blokken direct vermeld in de eerste tien velden van het adres. Als de bestandsgrootte meer dan 10 blokken is, bevat het volgende 11e veld het adres van het blok, waarin nog 128 nummers van de volgende blokken van het bestand kunnen worden geplaatst. Als het bestand groter is dan 10+128 blokken, dan wordt het 12e veld gebruikt, dat het bloknummer bevat met 128 bloknummers, die elk 128 bloknummers van dit bestand bevatten. En tot slot, als het bestand groter is dan 10+128+128(128, dan wordt het laatste 13e veld gebruikt voor drievoudige indirecte adressering, waarmee je het adres kunt specificeren van een bestand met een maximale grootte van 10+ 128 + 128( 128 + 128(128(128.

2.Algemene concepten van het bestandssysteem

De werking van elk bestandssysteem kan worden weergegeven door een model met meerdere niveaus (Figuur 5), waarin elk niveau een bepaalde interface (set van functies) biedt aan het hogere niveau, en zelf op zijn beurt de interface gebruikt (verwerkt een reeks van verzoeken) van het lagere niveau om zijn werk uit te voeren.

De taak van het tekenniveau is om de unieke naam van een bestand te bepalen uit de symbolische naam. Op bestandssystemen waar elk bestand slechts één symbolische naam kan hebben (zoals MS-DOS), ontbreekt dit niveau omdat de symbolische naam die door de gebruiker aan het bestand wordt gegeven zowel uniek is als door het besturingssysteem kan worden gebruikt.

Afbeelding 5 Algemeen bestandssysteemmodel

In andere bestandssystemen, waar hetzelfde bestand meerdere symbolische namen kan hebben, wordt de directoryketen op dit niveau opgezocht om een ​​unieke bestandsnaam te bepalen. In het UNIX-bestandssysteem is de unieke naam bijvoorbeeld het inodenummer van het bestand (i-node).

Op het volgende, basisniveau, worden de kenmerken ervan bepaald door een unieke bestandsnaam: toegangsrechten, adres, grootte en andere. Zoals eerder vermeld, kunnen de kenmerken van een bestand in de directory worden opgenomen of in aparte tabellen worden opgeslagen. Wanneer een bestand wordt geopend, worden de kenmerken ervan verplaatst van schijf naar RAM om de gemiddelde toegangstijd tot bestanden te verminderen. In sommige bestandssystemen (bijvoorbeeld HPFS) worden, wanneer een bestand wordt geopend, samen met de kenmerken ervan, de eerste paar blokken van het bestand met gegevens naar het RAM verplaatst.

De volgende stap in de uitvoering van het verzoek aan het bestand is het controleren van de toegangsrechten ervoor. Om dit te doen, worden de machtigingen van de gebruiker of het proces dat het verzoek heeft afgegeven, vergeleken met de lijst met toegestane typen toegang tot het gegeven bestand. Als het gevraagde type toegang is toegestaan, gaat het verzoek verder, zo niet, dan wordt een toegangsfoutbericht weergegeven.

Op logisch niveau worden de coördinaten van het gevraagde logische record in het bestand bepaald, dat wil zeggen dat moet worden bepaald op welke afstand (in bytes) vanaf het begin van het bestand het vereiste logische record zich bevindt. Tegelijkertijd wordt de fysieke locatie van het bestand geabstraheerd, het wordt weergegeven als een continue reeks bytes. Het bewerkingsalgoritme van dit niveau hangt af van de logische organisatie van het bestand. Als een bestand bijvoorbeeld is georganiseerd als een reeks logische records met een vaste lengte l, dan heeft het n-de logische record een offset van l((n-1) bytes. Om de coördinaten van een logisch record in een bestand met een index-sequentiële organisatie, de indextabel (sleutels) wordt gelezen, die direct het adres van het logische record specificeert.

Afbeelding 6 Fysieke laagfuncties van het bestandssysteem

Initiële data:

V - blokgrootte

N - nummer van het eerste blok van het bestand

S - offset van het logische record in het bestand

Het is vereist om op fysiek niveau te definiëren:

n - bloknummer met het vereiste logische record

s - offset van het logische record binnen het blok

n = N + , waarbij het gehele deel van het getal S/V . is

s = R - fractioneel deel van getal S/V

Op fysiek niveau bepaalt het bestandssysteem het nummer van het fysieke blok dat het vereiste logische record bevat en de offset van het logische record in het fysieke blok. Om dit probleem op te lossen, worden de resultaten van het werk van het logische niveau gebruikt - de offset van het logische record in het bestand, het adres van het bestand op het externe apparaat, evenals informatie over de fysieke organisatie van het bestand, inclusief de blokgrootte. Figuur 6 illustreert de werking van de fysieke laag voor de eenvoudigste fysieke organisatie van een bestand als een continue reeks blokken. We benadrukken dat het probleem van de fysieke laag is opgelost, ongeacht hoe het bestand logisch was georganiseerd.

Na het bepalen van het fysieke bloknummer, benadert het bestandssysteem het I/O-systeem om een ​​uitwisselingsoperatie uit te voeren met een extern apparaat. In reactie op dit verzoek wordt het benodigde blok overgebracht naar de bestandssysteembuffer, waarin, op basis van de ontvangen offset tijdens de werking van de fysieke laag, het benodigde logische record wordt geselecteerd.

Ontwikkelaars van nieuwe besturingssystemen streven ernaar de gebruiker de mogelijkheid te bieden om met meerdere bestandssystemen tegelijk te werken. In de nieuwe opvatting bestaat het bestandssysteem uit vele componenten, waaronder bestandssystemen in de traditionele zin.

Het nieuwe bestandssysteem heeft een structuur met meerdere niveaus (Figuur 7), met op het hoogste niveau de zogenaamde bestandssysteemschakelaar (in Windows 95 wordt zo'n schakelaar bijvoorbeeld een installeerbare bestandssysteembeheerder, IFS) genoemd. Het biedt een interface tussen de verzoeken van een toepassing en het specifieke bestandssysteem waartoe die toepassing toegang heeft. De bestandssysteemschakelaar converteert query's naar een formaat dat wordt geaccepteerd door de volgende laag, de bestandssysteemlaag.

Afbeelding 7 Moderne bestandssysteemarchitectuur

Elke component van het bestandssysteemniveau wordt geïmplementeerd als een driver voor het corresponderende bestandssysteem en ondersteunt een bepaalde organisatie van het bestandssysteem. De switch is de enige module die toegang heeft tot het stuurprogramma van het bestandssysteem. De applicatie heeft er geen directe toegang toe. Een stuurprogramma voor het bestandssysteem kan in re-entry-code worden geschreven, waardoor meerdere toepassingen bestandsbewerkingen tegelijk kunnen uitvoeren. Elk stuurprogramma voor het bestandssysteem registreert zich tijdens zijn eigen initialisatie bij de switch en geeft het een tabel met toegangspunten door die bij volgende toegang tot het bestandssysteem zullen worden gebruikt.

Om hun functies uit te voeren, hebben bestandssysteemstuurprogramma's toegang tot het I / O-subsysteem, dat de volgende laag van het bestandssysteem van de nieuwe architectuur vormt. Het input/output-subsysteem is een integraal onderdeel van het bestandssysteem, dat verantwoordelijk is voor het laden, initialiseren en beheren van alle modules van de lagere niveaus van het bestandssysteem. Meestal zijn deze modules poortstuurprogramma's die rechtstreeks met de hardware te maken hebben. Bovendien biedt het I/O-subsysteem enige service aan de stuurprogramma's van het bestandssysteem, waardoor ze specifieke apparaten kunnen opvragen. Het I/O-subsysteem moet altijd in het geheugen aanwezig zijn en het gezamenlijke werk van de hiërarchie van apparaatstuurprogramma's organiseren. Deze hiërarchie kan apparaatstuurprogramma's van een specifiek type bevatten (stuurprogramma's voor harde schijven of tapedrives), door leveranciers ondersteunde stuurprogramma's (dergelijke stuurprogramma's onderscheppen verzoeken om apparaten te blokkeren en kunnen het gedrag van een bestaand stuurprogramma voor blokkeringsapparaten gedeeltelijk wijzigen, zoals het versleutelen van gegevens), poortstuurprogramma's, die specifieke adapters beheren.

Een groot aantal niveaus van bestandssysteemarchitectuur biedt auteurs van apparaatstuurprogramma's een grote flexibiliteit - het stuurprogramma kan de controle overnemen in elk stadium van het verzoek - van de toepassing die de functie aanroept die met bestanden werkt, tot het moment waarop het apparaatstuurprogramma werkt op het laagste niveau begint te kijken naar de controller registers. Het multilevel-mechanisme van het bestandssysteem wordt geïmplementeerd via oproepketens.

Tijdens de initialisatie kan een apparaatstuurprogramma zichzelf toevoegen aan de oproepketen van een bepaald apparaat, terwijl het het niveau van een volgende oproep bepaalt. Het I/O-subsysteem plaatst het adres van de doelfunctie in de oproepketen van het apparaat, waarbij het gegeven niveau wordt gebruikt om de keten correct te ordenen. Terwijl het verzoek wordt uitgevoerd, roept het I / O-subsysteem opeenvolgend alle functies aan die eerder in de oproepketen zijn geplaatst.

Een geketende stuurprogrammaprocedure kan ervoor kiezen om het verzoek, gewijzigd of ongewijzigd, door te geven naar het volgende niveau, of, indien mogelijk, de procedure kan aan het verzoek voldoen zonder het verder in de keten door te geven.

3. Soorten bestandssystemen

3.1 FAT-bestandssysteem

De meeste bestaande bestandssystemen zijn gebouwd rond een File Allocation Table (FAT), die de datatracks in elk cluster op de schijf bevat. Er zijn verschillende soorten FAT-bestandssysteem - FAT 12, FAT 16 en FAT 32. Ze verschillen in het aantal cijfers dat wordt gebruikt in de bestandstoewijzingstabel. Met andere woorden, FAT 32 gebruikt een 32-bits nummer om een ​​gegevensspoor in elk cluster op te slaan, FAT 16 gebruikt een 16-bits nummer, enzovoort. De volgende typen FAT-bestandssysteem bestaan ​​momenteel:

FAT 12, gebruikt op partities met een capaciteit van 16 MB of minder (bijvoorbeeld een diskette);

FAT 16, gebruikt op partities van 16 MB tot 2 GB;

FAT 32, gebruikt (optioneel) op partities van 512 MB tot 2 TB.

De bestandssystemen FAT 12 en FAT 16 werden oorspronkelijk gebruikt in DOS en Windows en worden door bijna alle bekende besturingssystemen ondersteund. De meeste personal computers worden geleverd met harde schijven waarop een van de FAT-bestandssystemen is geïnstalleerd.

Het FAT 32-bestandssysteem wordt ondersteund door Windows 95 en hoger en Windows 2000.

Om gebruikersapplicaties toegang te geven tot bestanden, ongeacht het type schijf dat wordt gebruikt, biedt het besturingssysteem verschillende structuren. Deze structuren worden ondersteund door Windows-systemen en worden hieronder weergegeven in volgorde van locatie op schijf:

opstartsectoren van de hoofd- en extra partities;

opstartsector van een logische schijf;

bestandstoewijzingstabellen (FAT);

hoofdmap;

gegevensgebied;

cilinder om diagnostische lees-/schrijfbewerkingen uit te voeren.

Informatie over elke partitie wordt opgeslagen in de opstartsector van de partitie (of logische schijf) aan het begin van elke partitie. Er is ook een hoofdpartitielijsttabel geplaatst in de opstartsector van de hoofdpartitie.

De bootsector van de masterpartitie (of masterbootrecord (Master Boot Record - MBR)) is de eerste sector op de harde schijf (cilinder 0, kop 0, sector 1) en bestaat uit twee elementen.

Hoofdpartitietabel. Bevat een lijst met partities op een schijf en de locatie van de opstartsectoren van de bijbehorende logische schijven. Deze tabel is erg klein en kan maximaal vier items bevatten. Om dus meer partities in een besturingssysteem te krijgen (bijvoorbeeld DOS), kunt u één extra partitie maken en er meerdere logische stations in plaatsen.

Master-opstartcode. Een klein programma dat wordt uitgevoerd door het BIOS. De belangrijkste functie van deze code is om de besturing over te dragen naar een partitie die is aangewezen als actief (of opstartbaar).

De opstartsector is de eerste sector op een logische DOS-schijf. Op een diskette of een Zip-disk is dit bijvoorbeeld de allereerste fysieke sector, aangezien een diskette niet kan worden gepartitioneerd en slechts één logisch station heeft. Op een harde schijf bevinden de opstartsector(en) zich aan het begin van elke niet-aanvullende partitie, of aan het begin van elk gebied van de schijf dat wordt herkend als een logische DOS-schijf.

Deze sectoren lijken een beetje op opstartsectoren van partities, omdat ze tabellen bevatten met speciale informatie over de logische schijfeenheid.

Een schijfparameterblok met specifieke informatie zoals partitiegrootte, aantal gebruikte schijfsectoren, clustergrootte en volumelabel.

Opstartcode is een programma dat het opstartproces van het besturingssysteem start. Voor DOS en Windows 9x/Me is dit het Io.sys-bestand.

De opstartsector van de diskette wordt geladen door het ROM-BIOS en wanneer het systeem wordt opgestart vanaf een harde schijf, draagt ​​de MBR de controle over aan de opstartsector van de actieve partitie. In beide gevallen neemt de opstartsector van de logische schijf de controle over. Het voert enkele controles uit en probeert vervolgens het eerste systeembestand van schijf te lezen (in DOS/Windows is dit het Io.sys-bestand). De opstartsector is niet zichtbaar omdat deze zich buiten het bestandsopslaggebied van de logische schijf bevindt.

Een directory is een database met informatie over de bestanden die op een schijf zijn opgeslagen. Elk item erin is 32 bytes lang en er mogen geen scheidingstekens tussen de items staan. De directory slaat bijna alle informatie op over het bestand dat het besturingssysteem heeft.

Bestandsnaam en extensie - acht tekens in de naam en drie tekens in de extensie; de punt tussen de bestandsnaam en de extensie is geïmpliceerd, maar is niet opgenomen in dit item.

Bestandsattributenbyte met een vlag die de standaardbestandsattributen vertegenwoordigt.

De tijd en datum waarop het bestand is gemaakt of gewijzigd.

Bestandslocatie-informatie, dwz. de locatie van de overige clusters is opgenomen in de FAT.

Alle mappen hebben dezelfde structuur. Vermeldingen in deze database slaan belangrijke informatie op over bestanden die is gekoppeld aan informatie die is opgeslagen in de FAT via een van de velden van de invoer, het nummer van het eerste schijfcluster dat door het bestand wordt ingenomen. Als alle bestanden op de schijf de grootte van één cluster niet zouden overschrijden, zou FAT helemaal niet nodig zijn. De FAT bevat informatie over het bestand dat niet in de directory staat - de nummers van de clusters waarin het hele bestand zich bevindt.

De bestandstoewijzingstabel (FAT) bevat de nummers van de clusters waar de bestanden zich op de schijf bevinden. Elk cluster in de FAT komt overeen met één nummer. Sectoren die geen gebruikersgegevens (bestanden) bevatten, worden niet weergegeven in FAT. Deze sectoren omvatten opstartsectoren, bestandstoewijzingstabellen en hoofddirectory-sectoren.

In het FAT-bestandssysteem wordt schijfruimte niet verdeeld in sectoren, maar in groepen van sectoren, die clusters (toewijzingscellen) worden genoemd. Een cluster bevat een of meer sectoren. De clustergrootte wordt bepaald bij het verdelen van de schijf in partities met behulp van het Fdisk-programma en is afhankelijk van de grootte van de partitie die wordt gemaakt. De kleinste schijfgrootte die kan worden ingenomen door een bestand dat niet nul is, is één cluster. Elk bestand gebruikt een geheel aantal clusters. Als een bestand bijvoorbeeld één byte meer inneemt dan de clustergrootte, worden er twee clusters toegewezen voor plaatsing op schijf.

FAT is een spreadsheet die de toewijzing van schijfruimte beheert. Elke cel in deze tabel is gekoppeld aan een specifiek cluster op schijf. Het getal in deze cel geeft aan of dit cluster voor een bestand wordt gebruikt en, indien gebruikt, waar het volgende cluster van dit bestand zich bevindt.

Het schijfgegevensgebied is het gebied dat volgt op de opstartsector, de bestandstoewijzingstabellen en de hoofdmap op een logische schijfeenheid. Dit gebied wordt bestuurd door FAT en de hoofdmap en is verdeeld in toewijzingscellen die clusters worden genoemd. In deze clusters bevinden zich de bestanden die op de schijf zijn opgeslagen.

3.2 FAT-bestandssysteemfouten

Fouten in het bestandssysteem lijken eerder te wijten aan software dan aan hardwarestoringen (bijvoorbeeld wanneer Windows onjuist wordt afgesloten).

Verloren clusters. Dit is de meest voorkomende fout in het bestandssysteem, waarbij clusters in de FAT worden gemarkeerd als in gebruik terwijl ze dat niet zijn. Deze zwevende clusters verschijnen wanneer een toepassing onjuist wordt beëindigd of het systeem crasht. Programma's voor schijfherstel kunnen deze clusters detecteren en repareren.

Programma's voor schijfherstel scannen de schijf en maken een kopie van de FAT in het RAM. Vervolgens wordt deze kopie vergeleken met de "echte" FAT en zo worden de verloren clusters onthuld, d.w.z. niet behorend tot een van de bestaande bestanden. Bijna alle herstelprogramma's kunnen informatie van verloren clusters opslaan in een bestand en deze vervolgens op nul terugzetten.

Het programma Chkdsk maakt bijvoorbeeld bestanden met de namen FILE0001.CHK, FILE0002.CHK, enzovoort, van ketens van verloren clusters.

Overlappende bestanden. Dergelijke bestanden verschijnen wanneer twee directory-items onjuist naar hetzelfde cluster verwijzen. Als gevolg hiervan "bevat" het cluster gegevens uit verschillende bestanden, wat natuurlijk onaanvaardbaar is.

Vaker wel dan niet, is een van de overlappende bestanden beschadigd. Programma's voor gegevensherstel lossen het probleem van overlappende bestanden meestal op de volgende manier op: de bestanden worden gekopieerd met nieuwe namen om schijfruimte vrij te maken en het overlappende gebied van beide bestanden (en hun andere delen) wordt verwijderd. Merk op dat beide bestanden worden verwijderd, d.w.z. het elimineren van een dergelijke fout creëert geen nieuwe problemen: een directory-ingang verwijst bijvoorbeeld naar een niet-bestaand bestand. Door naar de twee herstelde bestanden te kijken, kunt u bepalen welke beschadigd is.

Ongeldig bestand of map. Soms is de informatie in een directory-item voor:

bestand of submap is niet waar: invoer bevat

cluster met ongeldige datum of ongeldige indeling. Bijna alle schijfherstelprogramma's lossen dit probleem ook op.

De commando's Chkdsk, Recover en Scandisk zijn de "reddingsbrigade" van DOS die zich toelegt op het herstellen van beschadigde gegevens op een schijf. Deze commando's hebben een zeer eenvoudige en niet al te vriendelijke interface, het gebruik ervan heeft vaak een aanzienlijke impact op het systeem, maar soms zijn ze de enige die kunnen helpen.

3.3 NTFS-bestandssysteem

Vergeleken met FAT of FAT32 biedt NTFS de gebruiker een hele combinatie van voordelen: efficiëntie, betrouwbaarheid en compatibiliteit. Het NTFS-bestandssysteem wordt gebruikt in het besturingssysteem Windows NT/2000/XP.

Net als elk ander systeem verdeelt NTFS alle bruikbare ruimte in clusters - datablokken die tegelijkertijd worden gebruikt. NTFS ondersteunt bijna elke clustergrootte - van 512 bytes tot 64 KB, terwijl een cluster van 4 KB als een bepaalde standaard wordt beschouwd

Bij het installeren van NTFS is de schijf verdeeld in twee ongelijke delen: de eerste is toegewezen aan de MFT (Master File Table - de algemene bestandstabel), wordt de MFT - zone genoemd en beslaat ongeveer 12% van de totale schijfgrootte, de tweede een deel wordt ingenomen door uw eigen gegevens. Er is ook nog een derde zone, maar daarover later meer. MFT ligt aan het begin van de schijf, elk item in de MFT komt overeen met een bestand en neemt ongeveer 1 Kb in beslag. In de kern is dit een map met alle bestanden op de schijf. Opgemerkt moet worden dat elk gegevenselement in NTFS als een bestand wordt behandeld, zelfs als MFT.

De MFT-zone wordt altijd leeg gehouden - dit wordt gedaan zodat het belangrijkste servicebestand (MFT) niet gefragmenteerd raakt naarmate het groeit. De resterende 88% van de schijf is gewoon normale opslagruimte voor bestanden.

Vrije schijfruimte omvat echter alle fysiek vrije ruimte - ongevulde delen van de MFT-zone zijn daar ook inbegrepen. Het mechanisme voor het gebruik van de MFT-zone is als volgt: wanneer bestanden niet langer naar de normale ruimte kunnen worden geschreven, wordt de MFT-zone eenvoudig verkleind (precies twee keer in de huidige versies van besturingssystemen), waardoor er ruimte vrijkomt voor het schrijven van bestanden. Bij het vrijmaken van ruimte in een regulier MFT-gebied kan het gebied weer uitbreiden.

De eerste 16 bestanden (metabestanden) in de MFT-zone zijn een speciale kaste. Ze bevatten service-informatie, hebben een vaste positie en zijn zelfs voor het besturingssysteem ontoegankelijk. Trouwens, de eerste van deze 16 is het MFT-bestand zelf. Er is een kopie van de eerste drie inzendingen.

De derde zone verdeelt op zijn beurt de schijf in tweeën. Dit is gedaan voor de betrouwbaarheid, in geval van verlies van informatie in het MFT-bestand kun je de informatie altijd herstellen, en daar is het al een kwestie van techniek, zoals ze zeggen. Alle andere bestanden in de MFT-zone kunnen willekeurig worden gelokaliseerd. Opgemerkt moet worden dat er in theorie niets in de MFT-zone is behalve servicebestanden. Maar er zijn momenten dat er geen ruimte meer is op dat deel van de schijf dat is gereserveerd voor de gebruiker, en dan wordt de MFT-zone kleiner. Dienovereenkomstig is er een plaats in de tweede helft van de schijf voor het schrijven van gegevens. Wanneer in deze zone voldoende vrije ruimte wordt vrijgemaakt, breidt de MFT-zone weer uit. En dit is waar het probleem zich voordoet. Gewone bestanden komen in de MFT-zone en het begint te fragmenteren. Maar terug naar metabestanden. Elk van hen is verantwoordelijk voor elk werkgebied. Ze beginnen met het naamteken $. Hier is een voorbeeld van een aantal van hen:

$MFT is niets anders dan de MFT zelf

$MFTmirr - dezelfde kopie die zich in het midden van de schijf bevindt

$LogFile is het logbestand

$Boot - zoals de naam al aangeeft, is Zijne Majesteit de bootsector

$Bitmap - kaart van de vrije ruimte van de partitie

Informatie over metabestanden bevindt zich in het MFT-bestand. Een dergelijk systeem is uitgevonden om de betrouwbaarheid van NTFS te vergroten en rechtvaardigt zichzelf. NTFS heeft vrijwel geen limiet op de schijfgrootte (tenminste met de huidige hardeschijftechnologieën). De clustergrootte kan variëren van 512 b tot 64 Kb, hoewel de gebruikelijke grootte 4 Kb is.

NTFS-map. Dit is een metabestand met het symbool $. Het is verdeeld in delen, die elk de bestandsnaam, de bijbehorende attributen en een link naar het MFT-bestand bevatten. En de rest van de informatie is er al. De directory is een binaire boom, d.w.z. in de directory is informatie over de gegevens op de schijf zo gelokaliseerd dat bij het zoeken naar een bestand de directory in twee delen werd verdeeld en het antwoord was in welk deel de zoekopdracht zich bevond. Vervolgens wordt dezelfde bewerking herhaald in de geselecteerde helft. En zo verder totdat het gewenste bestand is gevonden.

bestanden. Ze bestaan ​​niet als zodanig, er zijn zogenaamde stromen. Dat wil zeggen dat elke informatie-eenheid meerdere stromen vertegenwoordigt. Eén stroom zijn de gegevens zelf, het is de belangrijkste. Andere streams zijn bestandskenmerken. Elk bestand kan aan elk ander bestand worden toegevoegd. Simpel gezegd, u kunt een geheel nieuwe stroom aan gegevensstromen koppelen en daar nieuwe gegevens schrijven. Dat is gewoon informatie over het volume van het bestand dat wordt genomen op basis van het volume van de hoofdstream. Lege of kleine bestanden op schijf worden alleen weergegeven in metabestanden. Dit is gedaan om schijfruimte te besparen. In het algemeen moet worden opgemerkt dat het concept van een bestand veel dieper en breder is en dat het nogal moeilijk is om alle eigenschappen te beschrijven. Merk op dat de maximale lengte van een bestandsnaam tot 255 tekens kan zijn.

Bovendien hebben NTFS-bestanden zo'n kenmerk als gecomprimeerd. Elk bestand of zelfs elke map kan worden gecomprimeerd. De compressie zelf gebeurt onmerkbaar, omdat de snelheid vrij hoog is. Tot aan de heap wordt de zogenaamde virtuele compressie gebruikt, d.w.z. het ene deel van het bestand kan worden gecomprimeerd en het andere niet. Compressie gebeurt in blokken. Elk blok is gelijk aan 16 clusters.

NTFS maakt gebruik van gegevensversleuteling. Dus als u om de een of andere reden het systeem opnieuw moet installeren, kunt u geen versleutelde bestanden lezen zonder de juiste autorisatie.

Journalen. NTFS is een fouttolerant systeem dat zichzelf bij bijna elke echte storing gemakkelijk in de juiste staat kan brengen. Elk modern bestandssysteem is gebaseerd op zo'n concept als een transactie - een actie die volledig en correct wordt uitgevoerd of helemaal niet wordt uitgevoerd. NTFS heeft eenvoudigweg geen tussenliggende (foutieve of onjuiste) toestanden - het gegevensveranderingsquantum kan niet worden onderverdeeld in voor en na de storing, wat vernietiging en verwarring met zich meebrengt - het is gepleegd of geannuleerd.

Voorbeeld: Er worden gegevens naar schijf geschreven. Het blijkt plotseling dat we niet konden schrijven naar de plaats waar we net besloten hadden om het volgende deel van de gegevens te schrijven - fysieke schade aan het oppervlak. Het gedrag van NTFS is in dit geval vrij logisch: de schrijftransactie wordt in zijn geheel teruggedraaid - het systeem realiseert zich dat er niet is geschreven. De plaats wordt gemarkeerd als mislukt en de gegevens worden naar een andere plaats geschreven - een nieuwe transactie begint.

Loggen is dus een middel om het aantal fouten en systeemstoringen aanzienlijk te verminderen. Het is onwaarschijnlijk dat een gewone NTFS-gebruiker ooit een systeemfout zal opmerken of gedwongen wordt om chkdsk uit te voeren - de ervaring leert dat NTFS wordt hersteld naar een volledig correcte staat, zelfs tijdens crashes tijdens zeer drukke momenten van schijfactiviteit. U kunt zelfs de schijf optimaliseren en midden in dit proces op reset drukken - zelfs in dit geval is de kans op gegevensverlies erg klein. Het is echter belangrijk om te begrijpen dat het NTFS-herstelsysteem ervoor zorgt dat het bestandssysteem correct is, niet uw gegevens. Als u naar een schijf aan het schrijven was en een ongeluk kreeg, worden uw gegevens mogelijk niet geschreven.

3.4 Vergelijkende kenmerken van FAT 32 en NTFS. Voor-en nadelen

Voordelen van NTFS:

1. Hoge toegangssnelheid tot kleine bestanden;

2. De hoeveelheid schijfruimte is tegenwoordig praktisch onbeperkt;

3. Bestandsfragmentatie heeft geen invloed op het bestandssysteem zelf;

4. Hoge betrouwbaarheid van het opslaan van gegevens en de feitelijke bestandsstructuur zelf;

5. Hoge prestaties bij het werken met grote bestanden;

Nadelen van NTFS:

1. Hogere eisen voor RAM vergeleken met FAT 32;

2. Werken met catalogi van gemiddelde grootte is moeilijk vanwege hun fragmentatie;

3. Lagere werksnelheid vergeleken met FAT 32;

Voordelen van FAT32:

1. Hoge snelheidsverrichting;

2. Lage RAM-vereiste;

3. Effectief werken met bestanden van middelgrote en kleine omvang;

4. Lagere schijfslijtage door minder bewegingen van de lees-/schrijfkop.

Nadelen van FAT32:

1. Lage bescherming tegen systeemstoringen;

2. Inefficiënt werken met grote bestanden;

3. Beperking van het maximale volume van de partitie en het bestand;

4. Verminderde prestaties tijdens fragmentatie;

5. Verminderde prestaties bij het werken met mappen die een groot aantal bestanden bevatten.

3.5 Linux-bestandssystemen

Modern, krachtig en gratis, het Linux-besturingssysteem biedt een groot gebied voor de ontwikkeling van moderne systemen en aangepaste software. Enkele van de meest interessante ontwikkelingen in recente Linux-kernels zijn nieuwe, hoogwaardige technologieën voor het beheren van de opslag, toewijzing en update van gegevens op schijf.

3.5.1 EXT 2 (het tweede uitgebreide bestandssysteem)

Ext2 is het standaard bestandssysteem gemaakt door Linux. Als resultaat van zijn creatie zal een schijfpartitie uit veel gebieden bestaan, - groepen blokken, die op hun beurt zijn onderverdeeld in kleinere gebieden.

Een inode is een verwijzing naar een bestand dat informatie bevat met betrekking tot het bestand: eigenaar, machtigingen, datum van laatste wijziging. Elk bestand heeft één inode. Het aantal inodes is constant en wordt ingesteld tijdens de aanmaaktijd van het bestandssysteem (de standaardwaarde is één inode voor elke 4096 bytes).

Superblok - informatie over het hele bestandssysteem wordt opgeslagen in het superblok. Er is een superblok in elke blokgroep, het is slechts een reservekopie van het superblok uit de eerste blokgroep.

Groepsdescriptor - informatie over elke groep blokken wordt hier opgeslagen. Het bevat ook verwijzingen naar de inodetabel.

De blokbitmap is een array van bits die de gebruikte blokken aangeeft.

De inodetabel is een tabel met inodeblokken die daadwerkelijk zijn toegewezen aan een bepaalde groep inodes.

Datablokken zijn blokken die direct data bevatten.

Afbeelding 8 toont een diagram van het Linux-bestandssysteem.

Afbeelding 8 Ext2-bestandssysteem

Het ext3-bestandssysteem is in wezen een verbeterde versie van het ext2-bestandssysteem. Deze verbeteringen bieden de volgende voordelen:

1) Toegankelijkheid

In het geval van een onverwachte stroomuitval of een systeemcrash (een gracieus afsluiten van het systeem genoemd), moet elk aangekoppeld ext2-bestandssysteem op integriteit worden gecontroleerd met behulp van het e2fsck-programma. Dit is een langdurig proces dat het opstarten van het systeem aanzienlijk kan vertragen, vooral op grote schijven met een groot aantal bestanden. En totdat de controle is voltooid, zijn de gegevens op de schijven ontoegankelijk.

Het journaal dat wordt uitgevoerd door het ext3-bestandssysteem betekent dat dergelijke controles van het bestandssysteem niet langer nodig zijn na een onjuiste systeemafsluiting. Integriteitscontroles in ext3 worden alleen in zeer zeldzame gevallen uitgevoerd, wanneer er een hardwarestoring is, zoals een storing van de harde schijf. De hersteltijd voor een ext3-bestandssysteem na een vlotte afsluiting van het systeem is niet afhankelijk van de grootte van het bestandssysteem of het aantal bestanden, het hangt af van de grootte van het journaal dat wordt gebruikt om de integriteit te behouden. Herstel met de standaard loggrootte duurt ongeveer een seconde, afhankelijk van de snelheid van de computer.

2) Gegevensintegriteit

Het ext3-bestandssysteem zorgt op betrouwbare wijze voor de gegevensintegriteit in het geval van een onjuiste uitschakeling van het systeem. Met het ext3-bestandssysteem kunt u het type en het niveau van bescherming voor uw gegevens kiezen. Standaard bieden ext3-volumes een hoog niveau van gegevensintegriteit op basis van de status van het bestandssysteem.

3) Snelheid:

Hoewel sommige gegevens meerdere keren worden geschreven, is ext3 in de meeste gevallen sneller dan ext2 omdat ext3's journaal de beweging van de schijfkop optimaliseert. U kunt de snelheid optimaliseren door te kiezen uit drie logmodi, maar houd er rekening mee dat dit het niveau van gegevensintegriteit beïnvloedt.

4. Programma's voor het werken met harde schijven en bestandssystemen

4.1 Acronis Disk Director Suite 10

Acronis Disk Director Suite 10 biedt functies zoals het beheren van harde schijven, ze in partities verdelen zonder gegevensverlies, het besturingssysteem van schijf naar schijf verplaatsen en nog veel meer. Dit is een professioneel programma om thuis met harde schijven te werken.

Om Acronis Disk Director Suite volledig te kunnen gebruiken, moet u beschikken over:

Besturingssysteem Microsoft Windows 98 SE/Me/NT4.0/Workstation SP 6/2000 Professional SP 4/XP SP 2;

Processor met een kloksnelheid van 300 MHz of hoger;

256 MB RAM;

100 MB vrije schijfruimte;

Writer cd/dvd-station.

Het installeren van het programma levert geen problemen op. Alles is intuïtief.

De programma-interface is uiterst eenvoudig en duidelijk

Er wordt een professionele werkbenadering georganiseerd, rekening houdend met de vaardigheden van gewone gebruikers. Acronis Disk Director Suite 10 bevat bijgewerkte hulpprogramma's die voorheen alleen afzonderlijk verkrijgbaar waren. Partition Manager (Partition Expert) helpt u bij het kopiëren, splitsen en verplaatsen van harde schijfpartities zonder gegevensverlies. Deze functie is een van de meest populaire en nuttige. U kunt uw besturingssysteem met alle bestanden overzetten naar een nieuwe harde schijf als de oude kapot is. Dit elimineert de noodzaak om het besturingssysteem opnieuw te installeren met alle programma's. Of u kunt de harde schijf eenvoudig in partities (lokale schijven) verdelen voor gebruiksgemak. Het splitsen van een schijf in meerdere partities zonder gegevensverlies is net zo eenvoudig als het pellen van peren. Om dit te doen, hoeft u slechts een paar muisbewegingen te maken: start het programma, klik met de rechtermuisknop op de harde schijf, selecteer "Formaat wijzigen" en stel de gewenste grootte in door de visuele grenzen van de partitie te verplaatsen. En dat is alles. Ja, nog één ding: om een ​​bewerking afzonderlijk of in één keer uit te voeren, drukt u op de "Voltooien-vlag" (Figuur 9).

Afbeelding 9: De grootte van een partitie wijzigen

De schijfeditor voert gespecialiseerde bewerkingen uit op het werken met een harde schijf: van controle tot het corrigeren van fouten. U kunt de harde schijf automatisch op fouten controleren als u dit programma voor de eerste keer gebruikt of zelfs een hex-editor gebruiken. Om een ​​controle uit te voeren, selecteert u gewoon een harde schijf of partitie door er met de rechtermuisknop op te klikken en "Controleren" te selecteren. Het hulpprogramma zal de harde schijf opschonen. Partition Recovery Utility (Recovery Expert) is een professionele tool om verloren of verwijderde partities weer tot leven te brengen en te herstellen. Het kan gebeuren dat een partitie op de harde schijf per ongeluk wordt verwijderd of het gebeurt als gevolg van een softwarefout. Dit hulpprogramma kan gegevens die zelfs een paar maanden geleden zijn verwijderd, met hoge nauwkeurigheid herstellen. Om dit hulpprogramma aan te roepen, moet u op het tabblad "Wizards" klikken en "Partition Recovery" selecteren.

Het programma houdt een gebeurtenislogboek bij, u kunt altijd zien wat er met de harde schijf is gebeurd, welke acties het programma zelf heeft ondernomen. Dit is handig als we zijn vergeten hoe we deze of gene actie op de harde schijf correct moeten uitvoeren of als we de volgorde van stappen bij het uitvoeren van de bewerking weten. Het programma heeft alle zetten geregistreerd (Figuur 10)!

Afbeelding 10: Programmagebeurtenislogboek

En een andere handige functie van het programma is het maken van een opstartschijf. Als Windows plotseling "een lang leven bestelde", en we geen tijd hadden om een ​​kopie van onze bestanden te maken, moet je niet denken dat kostbare informatie voor altijd verloren is. Laten we een opstartdiskette gebruiken: deze kan met een harde schijf werken zonder het besturingssysteem te laden. We kunnen volledig werken met de inhoud van de harde schijf, bestanden overzetten, testen op fouten en proberen het probleem met het laden van het besturingssysteem op te lossen. De functies en het uiterlijk van het programma zullen in dit geval niet verschillen van die in Windows. Een kleine "maar": je moet van tevoren een opstartdiskette maken, het beste van alles direct na het installeren van het programma (Figuur 11).

Afbeelding 11 Een opstartdiskette maken

Het maken van een opstartdiskette duurt enkele minuten en vereist geen vaardigheden. Hiervoor hebt u een lege cd-r-schijf nodig. Selecteer "Opstartschijven maken" op het tabblad "Extra". U hoeft alleen maar overal op "Volgende" te klikken en te wachten tot de schijf is gebrand. Dat is alles. Acronis Disk Director Suite 10 staat nu op de cd.

4.2. Power Quest Partition Magic 8.0

Het programma Power Quest Partition Magic 8.0 werkt met alle versies van Windows, het wil minimaal 32 MB RAM zien en een processor van minimaal Pentium-150. Partition Magic 8.0 begrijpt FAT16, FAT32, NTFS, Linux Ext2/3 bestandssystemen en weet ook wat een Linux Swap-partitie is.

Laten we eens kijken wat de ontwikkelaars ons beloven in termen van de vaardigheden van de nieuwe versie van het programma:

Partities maken en verwijderen op de harde schijf, evenals het formaat van deze partities wijzigen zonder gegevens te verliezen. Zoals u kunt zien, rust FDISK.

Partities samenvoegen zonder gegevens te verliezen (u kunt bijvoorbeeld de hoofdpartitie en de logische schijf in één geheel combineren).

Converteer FAT32 naar FAT16 en NTFS-bestandssystemen, en NTFS naar FAT32.

De grootte van het cluster wijzigen om verspilde schijfruimte te verminderen.

Na het wijzigen van de stationsletter zal het ingebouwde hulpprogramma DriveMapper de paden naar de programma's controleren en, indien nodig, wijzigingen aanbrengen in het register en de nodige correcties aanbrengen in de systeemsnelkoppelingen.

Harde schijven controleren op beschadigde sectoren.

Werken met partities tot 160 GB.

Ondersteuning voor nieuwe apparaten met USB2 en FireWire (IE 1394) communicatieprotocollen.

Het hulpprogramma Boot Magic 8.0 dat bij Partition Magic 8.0 wordt geleverd, zal, indien nodig, een handig menu maken voor het selecteren van het opstarten van een bepaald besturingssysteem.

Mogelijkheid om opstartdiskettes te maken om wijzigingen of fixes aan te brengen in een DOS-omgeving. Overigens kunnen deze floppydisks (2 stuks) direct tijdens de installatie van het programma worden gemaakt, of u kunt dit daarna doen door het item Create Rescue Diskettes te selecteren in het menu Start > Programma's > PartitionMagic 8.0 Tools. Wees niet lui om deze operatie uit te voeren, want het leven is onvoorspelbaar.

Het hoofdvenster van het programma toont onmiddellijk alle beschikbare partities op de harde schijven van uw computer (Figuur 12).

Afbeelding 12: Hoofdvenster "Partition Magic 8.0"

Bovendien is elke sectie gemarkeerd met een speciale kleur, waarmee Partition Magic bestandssystemen markeert - het zal moeilijk zijn om een ​​fout te maken. De hoeveelheid vrije ruimte in de partitie is ook duidelijk zichtbaar (niet-toegewezen ruimte is wit gemarkeerd). Commando's voor alle bewerkingen met partities zijn zowel in het menu als in het contextmenu beschikbaar. Dus, wat hebben we, kijkend naar figuur 9? De afbeelding geeft aan dat er twee fysieke harde schijven zijn geïnstalleerd in de pc-systeemeenheid.

De nieuwe versie heeft een actiepaneel, dat zich aan de linkerkant van het hoofdvenster bevindt. De sectie Kies een taak presenteert een reeks "Helpers" voor basispartitiebewerkingen die beginnende gebruikers helpen de nodige manipulaties uit te voeren om een ​​nieuwe partitie te creëren, vrije ruimte opnieuw te verdelen en een nieuw besturingssysteem te installeren. Elke "Wizard" bestaat uit een cyclus van opeenvolgende stappen, die worden gemaakt in de vorm van begrijpelijke vensters.

Laten we proberen de diensten van deze "Meesters" te weigeren, en we zullen alle basishandelingen zelf doen. Overweeg eerst de situatie met de enige hoofdpartitie (waar Windows is geïnstalleerd), waarin we een logische schijf moeten maken.

Voor de extra partitie die wordt gemaakt, hebben we natuurlijk vrije ruimte nodig, die we van de hoofdpartitie zullen lenen. Klik met de rechtermuisknop op de partitie-afbeelding in het Partition Magic-venster en selecteer de opdracht Formaat wijzigen/verplaatsen in het contextmenu. In het gelijknamige venster kunt u in het veld Nieuwe grootte direct de grootte van de extra partitie instellen, of u kunt de schuifregelaar met de cursor verslepen en de gewenste grootte "met het oog" selecteren (Figuur 13).

Afbeelding 13: het formaat van de partitie wijzigen

Het programma geeft onmiddellijk informatie over de minimum- en maximumwaarden voor de grootte van de nieuwe partitie, waardoor we de lucht niet kunnen raken.

Na de procedure van "eerlijk nemen" van de schijfruimte van de hoofdpartitie, wordt de vrije ruimte gemarkeerd in een gezichtsloze grijze kleur - Niet toegewezen.

Het is op deze "maagdelijke landen" dat we een extra partitie met een logische schijf zullen maken. We klikken opnieuw met de muis, maar al op het grijze veld, waarna we in het contextmenu het commando Maken selecteren (Figuur 14):

Afbeelding 14

Aangezien we een logische schijf wilden maken, selecteren we in het veld Maken als de parameter Logical en het FAT32-bestandssysteem, dat door alle systemen van Microsoft wordt begrepen.

Er is geen extra formattering van de gemaakte partitie nodig, aangezien we het bestandssysteemtype hebben ingesteld, maar als u de logische schijf wilt formatteren, bijvoorbeeld in NTFS, gebruiken we de opdracht Format van het contextmenu, of hetzelfde commando in het Partitiemenu van het hoofdvenster. Aan het einde van de bovenstaande procedures zal de nieuwe partitie, samen met de gloednieuwe logische schijf D:, ons zijn schone gezicht laten zien (Figuur 15):

Afbeelding 15: De logische schijfeenheid is bijna klaar

Zoals je kunt zien, zorgde het programma zelf voor het toewijzen van een letter aan de nieuwe schijf. Het blijft om op de knop Toepassen in de linkerbenedenhoek van het hoofdvenster te klikken, waarna de wijzigingen direct in de Windows-omgeving van kracht worden (Figuur 16):

Afbeelding 16: het proces is begonnen

Maar dit is nog niet het einde: het ingebouwde hulpprogramma Drive Mapper zal onmiddellijk toestemming vragen om de gewijzigde paden naar programma's te volgen om correcties in het register aan te brengen, omdat er dergelijke zijn - we hebben tenslotte een nieuwe schijf met de letter D :, en het cd-rom-station is bekend geworden als de letter E: (Afbeelding 17).

Afbeelding 17

4.2.1 DOS-versie van Partitin Magic

Na het laden van de DOS-versie verschijnt er een programmavenster dat niet zo mooi is als in de 32-bits incarnatie, maar waarmee je bijna alle bewerkingen kunt uitvoeren die de gebruiker onder Windows doet. Om de grootte van een partitie te wijzigen en een nieuwe partitie aan te maken, klikt u in het veld van een bestaande partitie en selecteert u de opdracht Formaat wijzigen/verplaatsen in het contextmenu (Afbeelding 18).

Afbeelding 18

Het venster met de resizing-engine is ons al bekend van de Windows-versie en levert geen problemen op: sleep de engine gewoon naar de gewenste grootte van de nieuwe partitie of voer meteen het vereiste aantal megabytes of gigabytes in voor de nieuwe partitie in het veld Vrije ruimte na (Afbeelding 19 ).

Figuur 20

Selecteer in de lijst Maken als de gewenste optie: Logische partitie voor een logische schijf, of Primaire partitie bij het maken van een andere primaire (hoofd)partitie. In de lijst Partitietype noteren we het type bestandssysteem van de toekomstige partitie of logische schijf: FAT32, NTFS of naar eigen goeddunken (Afbeelding 21).

Afbeelding 21

Na deze manipulaties verschijnt een PROJECT van een nieuwe harde schijfstructuur in het programmavenster (Figuur 22).

Afbeelding 22

Om de aangebrachte wijzigingen op te slaan, drukt u op de knop Toepassen en antwoordt u met Ja op de eeuwige vraag - te zijn of bijvoorbeeld niet te zijn (Figuur 23). Na een korte programmalooptijd (Afbeelding 24) worden alle wijzigingen van kracht.

Afbeelding 23

Afbeelding 24

Zoals eerder vermeld, kan Partition Magic primaire partities omzetten in logische schijven en vice versa, evenals FAT32 > NTFS converteren en vice versa. De DOS-versie doet hetzelfde: wanneer u op de gewenste partitie klikt, selecteert u het bekende Convert-commando, waarna er geen venster verschijnt, maar een vervolgkeuzemenu met de beschikbare commando's voor deze partitie. Zo zien de opdrachten voor een logische schijf met het NTFS-bestandssysteem er bijvoorbeeld uit: u kunt er een primaire partitie van maken (Logisch naar Primair) of het bestandssysteem converteren naar FAT32 (NTFS naar FAT32) - Afbeelding 25.

figuur 25

En hier is wat u kunt doen met een FAT32-partitie (Figuur 26): zoals u kunt zien, is het mogelijk om de hoofdpartitie in een logische schijf te veranderen (Primair naar Logisch) en het bestandssysteem te converteren naar ... FAT (wat betekent het FAT16-systeem). Waarom is de opdracht voor het converteren naar NTFS niet beschikbaar? Ik zal je een klein geheimpje vertellen: er waren geen gegevens in deze partitie, en daarom was er niets te verliezen, en om het bestandssysteem van de partitie in NTFS te veranderen, zou je de opdracht Format moeten selecteren - dat is alles.

Afbeelding 26

Alle opdrachten van het contextmenu van de DOS-versie van Partition Magic zijn beschikbaar in het menu Bewerkingen van het hoofdvenster (Afbeelding 27).

Afbeelding 27

Zoals je kunt zien, heeft het Partition Magic 8.0-programma veel functies en hulpprogramma's en kan het bijna alle taken oplossen die de gebruiker gaat oplossen bij het werken met schijfpartities.

Conclusie

Het bestandssysteem is, vanuit het oogpunt van de gebruiker, de "ruimte" waarin bestanden worden geplaatst. En als wetenschappelijke term is het een onderdeel van het besturingssysteem, dat tot doel heeft de gebruiker een handige interface te bieden bij het werken met gegevens die op schijf zijn opgeslagen en om het delen van bestanden tussen meerdere gebruikers en processen te verzekeren.

In brede zin omvat de term "bestandssysteem":

het verzamelen van alle bestanden op de schijf,

sets van datastructuren die worden gebruikt om bestanden te beheren, zoals bestandsdirectories, bestandsdescriptors, vrije en gebruikte schijfruimtetoewijzingstabellen,

een set systeemsoftwaretools die bestandsbeheer implementeren, in het bijzonder: creatie, vernietiging, lezen, schrijven, benoemen, zoeken en andere bewerkingen op bestanden.

De aanwezigheid van een bestandssysteem stelt u in staat de naam van het bestand te bepalen, waar het zich bevindt. Aangezien informatie op personal computers voornamelijk op schijven wordt opgeslagen, bepalen de bestandssystemen die erop worden gebruikt de organisatie van gegevens op schijven (meer precies, op logische schijven). Dit document beschouwt verschillende soorten bestandssystemen, hun vergelijkende kenmerken.

Bibliografie

Guk M. IBM PC Hardware: Bestseller - 2e druk: Peter, 2005.

Figurnov V.E. "IBM PC voor de gebruiker" - 7e druk, herzien. en extra - M. INFA-M, 1998.

Organisatie van computers en systemen

Orlov S., Tsilker B. Organisatie van computers en systemen: Peter, 2007, 672 p.

Melekhin V.F., Pavlovsky EG Computermachines, systemen en netwerken, 3e druk: M.: Publishing Center "Academy", 2007, 560 p.

Gordeev AV Besturingssystemen. Leerboek voor middelbare scholen. 2e druk: Peter, 2004, 416 d.

Tanenbaum ES Vertaling: A. Leontiev Moderne besturingssystemen: Peter, 2002, 1040 p.

Smooth A. A. Windows XP voor iedereen: Peter, 2005, 208 p.

Elektronische bronnen

Overzicht van FAT- en NTFS-bestandssystemen http://support.microsoft.com/kb/100108

www.powerquest.com

http://www.acronis.ru/homecomputing/products/diskdirector/

De structuur van het bestandssysteem. Toegangsmechanisme voor bestanden.

Bestand (het dossier) - een benoemde set gegevens. Het is mogelijk om bewerkingen met bestanden als een enkele entiteit uit te voeren met behulp van operators: open(open), dichtbij(dichtbij), creëren(creëren), vernietigen(vernietigen), kopiëren(kopiëren), hernoemen (hernoemen), uitvoer(lijst). Bovendien zijn bewerkingen op afzonderlijke bestandscomponenten mogelijk: lezen(lezen), schrijven(schrijven), bijwerken(bijwerken), invoegen(invoegen), uitsluiten(verwijderen).

Bestandsorganisatie

Bestandsorganisatie verwijst naar de manier waarop records in het externe geheugen zijn gerangschikt. Er zijn de volgende organisatiemethoden.

· Opeenvolgend - de records zijn in fysieke volgorde gerangschikt, d.w.z. het "volgende" record is het record dat fysiek op het vorige volgt, hier kunnen de records zowel een vaste lengte als een variabele lengte hebben.

Invoer vast

lengte

Variabele invoer

lengte

Aanwijzers voor recordlengte

· Index-sequentieel - de items zijn gerangschikt in een logische volgorde volgens de waarden van de sleutels in elk item. Index-sequentiële records kunnen sequentieel worden geopend, in oplopende/aflopende volgorde van sleutelwaarden, of rechtstreeks op sleutel, door te zoeken in de systeemindex.

https://pandia.ru/text/78/277/images/image012_9.gif" height="108 src=">.gif" width="214">

· rechtstreeks - records worden willekeurig benaderd door hun fysieke adressen op het opslagapparaat met directe toegang.

· Bibliotheek - het is in wezen een bestand dat bestaat uit opeenvolgende subbestanden, waarbij elk volgend subbestand een element of lid van het bestand wordt genoemd. Het startadres van elk dergelijk element wordt opgeslagen in de map van het bestand. Bibliotheekbestanden (gepartitioneerd) worden meestal gebruikt om programmabibliotheken of macrobibliotheken op te slaan.

Toegangsmethoden

Besturingssystemen implementeren doorgaans verschillende methoden voor bestandstoegang die in twee categorieën kunnen worden gegroepeerd:

· toegangsmethoden met wachtrijen;

· basistoegangsmethoden.

Methoden voor wachtrijtoegang worden gebruikt in gevallen waarin de volgorde van verwerking van records kan worden voorzien, bijvoorbeeld bij sequentiële en index-sequentiële organisaties. Deze methoden bieden preventieve buffering en I/O-planning. Bovendien bieden deze methoden automatische vergrendeling en vrijgave van records.

Basistoegangsmethoden worden meestal gebruikt in gevallen waarin de volgorde van verwerking van records niet kan worden voorzien, met name bij directe of willekeurige toegang. Basismethoden fysieke blokken lezen en schrijven, blokkeren en deblokkeren, indien nodig, wordt door de gebruiker zelf bepaald.

Bestandskenmerken

· variabiliteit- geeft aan hoe vaak nieuwe records aan het bestand worden toegevoegd en oude worden verwijderd. Als de frequentie laag is, wordt het bestand aangeroepen statisch, en als het groot is - dynamisch of veranderlijk het dossier.

· Activiteit- wordt bepaald door het percentage bestandsrecords dat tijdens een bepaalde run is verwerkt.

· Maat- bepaalt de hoeveelheid informatie die in het bestand wordt opgeslagen.

Bestandssysteem

Bestandssysteem- dit maakt deel uit van het algemene geheugenbeheersysteem (zie Structuur van de OS-kernel), waarvan het doel voornamelijk is om bestanden te beheren die zijn opgeslagen in extern geheugen, en om het delen van informatie tussen gebruikers te regelen.

Functies van het bestandssysteem

de mogelijkheid bieden om bestanden aan te maken, te wijzigen en te vernietigen;

· gecontroleerd delen van bestanden door meerdere gebruikers;

de gebruiker de mogelijkheid bieden om een ​​andere bestandsstructuur in te stellen en de mogelijkheid om de overdracht van informatie tussen bestanden te regelen;

Het systeem moet voorzien in de middelen om de veiligheid en het herstel van informatie in bestanden te waarborgen;

Het systeem moet de onafhankelijkheid van bestanden van externe apparaten waarborgen, d.w.z. gebruikers moeten de mogelijkheid krijgen om toegang te krijgen tot bestanden met symbolische namen;

Het systeem moet informatie in bestanden beschermen tegen ongeoorloofde toegang (de mogelijkheid om gegevens te coderen en te decoderen);

· Het bestandssysteem moet een "vriendelijke" interface hebben in relatie tot de gebruiker.

Samenstelling bestandssysteem

Het bestandssysteem dat deel uitmaakt van de OS-kernel bevat in de regel de volgende tools:

· Toegangsmethoden, die de specifieke organisatie van toegang tot gegevens die in bestanden zijn opgeslagen definiëren.

· hulpprogramma's voor bestandsbeheer, het bieden van bestandsopslag, toegang, delen en bescherming.

· Externe geheugenbeheertools, het verstrekken van toewijzing van externe geheugenruimte voor het plaatsen van bestanden.

· Hulpprogramma's voor bestandsintegriteit, die de veiligheid van de bestandsinformatie garanderen.

Bestanden op schijf plaatsen

De indeling van bestanden in het schijfgeheugen lijkt veel op de toewijzing van geheugen bij multiprogrammering met variabele partities. Merk op dat tijdens de werking van het systeem de schijfruimte onderhevig is aan fragmentatie en dat het plaatsen van bestanden daarom in verspreide blokken moet gebeuren. Uiteraard is het mogelijk om de “vuilnisophaal”-methode te gebruiken die we al hebben overwogen, maar dit is niet altijd effectief.

Verbonden geheugentoewijzing

1 vrij

2

3

4

5 vrij

Verbonden geheugentoewijzing gaat ervan uit dat elk bestand een aaneengesloten gebied van extern geheugen krijgt toegewezen. Een van de voordelen van deze methode is dat sequentiële logische records in de regel fysiek dichtbij worden geplaatst, waardoor de toegangssnelheid kan worden verhoogd. Het is in dit geval eenvoudig om mappen te implementeren, omdat u voor elk bestand alleen het startadres en de lengte van het bestand hoeft op te slaan. Het nadeel van deze benadering van geheugentoewijzing is dat nadat de bestanden zijn vernietigd en de door ze bezette bronnen zijn teruggeplaatst in de vrije lijst, de nieuw toegewezen bestanden in de bestaande vrije gebieden moeten passen. We worden hier dus met dezelfde problemen geconfronteerd als bij fragmentatie in multiprogrammeersystemen met variabele partities - de noodzaak om vrije aangrenzende geheugengebieden samen te voegen. Bovendien is deze methode bij het werken met dynamisch veranderende bestandsgroottes mogelijk niet rationeel.

Niet-verbonden geheugentoewijzing

Distributie met behulp van sectorlijsten

In dit geval wordt het geheugen beschouwd als een verzameling afzonderlijke sectoren. Bestanden zijn opgebouwd uit sectoren, die zich op verschillende plaatsen op het externe geheugen kunnen bevinden. Sectoren die tot hetzelfde bestand behoren, bevatten links-pointers naar elkaar, die een lijst vormen. De lijst met vrije ruimte bevat alle vrije sectoren van het externe geheugen.

1

2 vrij

3

4 vrij

5

Als het nodig is om de bestandsgrootte te vergroten, vraagt ​​het corresponderende proces om een ​​extra aantal sectoren uit de vrije sectoren, en als de grootte wordt verkleind, worden de vrijgemaakte sectoren teruggestuurd naar de lijst met vrije sectoren. Zo wordt de noodzaak van geheugenverdichting vermeden.

Het nadeel van deze methode voor het toewijzen van geheugen is een toename van de overhead voor het creëren van een mechanisme voor het verwerken van pointerreferenties, evenals een mogelijke toename van de toegangstijd.

Toewijzing van geheugen blokkeren

De blokdistributieoptie combineert elementen van verbonden en niet-verbonden distributie, in dit geval wordt het geheugen niet gedistribueerd door individuele sectoren, maar door blokken van aangrenzende sectoren, en bij het toewijzen van nieuwe blokken heeft het systeem de neiging om vrije blokken zo dicht mogelijk bij bestaande te selecteren blokken van het bestand. Elke keer dat een bestand wordt geopend, wordt eerst het bijbehorende blok bepaald en vervolgens de bijbehorende sector binnen dit blok.

Implementatie van bloktoewijzing van geheugen kan worden gedaan met behulp van blokketens, indexblokketens En tafels weergeven.

Blokketen

Catalogus

https://pandia.ru/text/78/277/images/image022_2.gif" width="108" height="21">.gif" width="166" height="70">

gif" width="51" height="12"> Bestand Locatiegegevens Gegevensgegevensnul

In een blokketenschema wijst een regel in de directory naar het eerste blok van het bestand, waarna elk blok met een vaste lengte dat deel uitmaakt van het bestand twee delen bevat: de feitelijke gegevens en een verwijzing naar het volgende blok. De minimaal toegewezen geheugeneenheid is een blok met een vaste grootte.

Om een ​​specifiek item in een bestand te vinden, is het natuurlijk noodzakelijk om door de keten te kijken, het bijbehorende blok te vinden en vervolgens het benodigde item in het blok te vinden. Aangezien blokken over de hele schijf kunnen worden verspreid, kan dit proces lang duren. Om de toegangstijd te verkorten, kunnen kettingen worden gemaakt met bidirectionele schakels, waardoor het mogelijk is om de ketting in beide richtingen te bekijken.

Index blokketen

Catalogus

https://pandia.ru/text/78/277/images/image028_3.gif" width="166" height="2 src="> Bestandslocatie

Keten indexblokken

https://pandia.ru/text/78/277/images/image033_0.gif" width="166" height="165 src=">links">

https://pandia.ru/text/78/277/images/image039_0.gif" width="108" height="21"> https://pandia.ru/text/78/277/images/image028_3.gif" width="166" height="2 src="> Bestandslocatie Blok 6A(2)

Bloknummers worden gebruikt in plaats van verwijzingen in het tabelschema voor bloktoewijzing. Gewoonlijk kunnen nummers eenvoudig worden omgezet in werkelijke adressen. Er wordt een bestandstoewijzingstabel gebruikt, die één rij per schijfblok bevat. De regel in de directory van de gebruiker wijst naar de regel van de toewijzingstabel die overeenkomt met het eerste blok van het gegeven bestand. Elke rij van de toewijzingstabel bevat het nummer van het volgende blok in het gegeven bestand. Het is dus mogelijk om alle blokken van een bestand opeenvolgend te vinden door door de rijen van de bestandstoewijzingstabel te kijken. Die rijen van de tabel die overeenkomen met de laatste blokken bestanden zijn meestal ingesteld op een null-pointer. nul. In sommige rijen van de tabel wordt de vlag "vrij" aangegeven, wat aangeeft dat dit blok bij de volgende aanvraag kan worden toegewezen.

Het belangrijkste voordeel van een dergelijk schema is dat de bestandstoewijzingstabel kan worden gebruikt om de fysieke buurt van de blokken te beoordelen.

Classificatie, structuur, kenmerken van bestandssystemen!!!

1. Concept, structuur en werking van het bestandssysteem.

Bestandssysteem - een set (volgorde, structuur en inhoud) van het organiseren van gegevensopslag op informatiemedia, die direct toegang tot opgeslagen gegevens vertegenwoordigt, op huishoudniveau, dit is een set van alle bestanden en mappen op een schijf. De belangrijkste "eenheden" van het bestandssysteem worden beschouwd als een cluster, bestand, map, partitie, volume, schijf.
De reeks nullen en enen op het opslagmedium vormt een cluster (de minimale ruimte voor het opslaan van informatie, ze worden ook vaak het concept van een sector genoemd, hun grootte is een veelvoud van 512 bytes).
Bestanden - een benoemde verzameling bytes, verdeeld in sectoren. Afhankelijk van het bestandssysteem kan een bestand een andere set eigenschappen hebben. Voor het gemak bij het werken met bestanden worden hun (symbolische identifiers) namen gebruikt.
Om de structuur van het bestandssysteem te organiseren, zijn bestanden gegroepeerd in: catalogi .
Hoofdstuk - een schijfgebied dat tijdens het partitioneren is gemaakt en dat een of meer geformatteerde volumes bevat.
Volume - partitiegebied met bestandssysteem, bestandstabel en gegevensgebied. Een of meer secties zijn schijf .
Alle informatie over bestanden wordt opgeslagen in een speciaal gebied van de partitie - de bestandstabel. Met de bestandstabel kunt u numerieke bestandsidentificaties en aanvullende informatie daarover (wijzigingsdatum, toegangsrechten, naam, enz.) Koppelen aan de werkelijke inhoud van het bestand dat is opgeslagen in een ander deel van de partitie.

MBR (Master Boot Record) een speciaal gebied aan het begin van de schijf - met de informatie die het BIOS nodig heeft om het besturingssysteem vanaf de harde schijf op te starten.
Partitietabel (partitietabel) bevindt zich ook aan het begin van de schijf, zijn taak is om informatie over partities op te slaan: start, lengte, opstarten. De opstartpartitie bevat de opstartsector, waarin het opstartprogramma van het besturingssysteem is opgeslagen.

Het aftellen begint vanaf de MBR (vanaf sectornummer 0) voor alle primaire (primaire) partities, zowel voor normale als uitgebreide, en alleen voor primaire.
Alle gewone logische (niet uitgebreide logische) secties worden gespecificeerd door een verschuiving ten opzichte van het begin van de uitgebreide sectie waarin ze worden beschreven.
Alle uitgebreide logische (uitgebreide logische) secties worden ingesteld door een verschuiving ten opzichte van het begin van de uitgebreide hoofdsectie (uitgebreide primaire).

Het laden van het besturingssysteem is als volgt:
Wanneer de computer wordt aangezet, neemt het BIOS de besturing van de processor over, start het op vanaf de harde schijf, laadt de eerste sector van de schijf (MBR) in het RAM van de computer en draagt ​​de controle over aan de processor).

De MBR kan worden geschreven als een "standaard" bootloader,

en laders zoals LILO/GRUB.

De standaard bootloader vindt de eerste partitie met de opstartbare vlag in de hoofdpartitietabel, leest de eerste sector (bootsector) en draagt ​​de controle over aan de code die in deze bootsector is geschreven. Als er een andere is in plaats van de standaard MBR-bootloader, kijkt deze niet naar de opstartbare vlag, hij kan opstarten vanaf elke partitie (voorgeschreven in de instellingen).

Om bijvoorbeeld het besturingssysteem Windows NT/2k/XP/2003 te laden, wordt een code geschreven in de opstartsector die de hoofdlader (ntloader) van de huidige partitie in het geheugen laadt.
Elk FAT16/FAT32/NTFS-bestandssysteem heeft zijn eigen bootloader. De root van de partitie moet het bestand ntldr bevatten. Als u het bericht "NTLDR ontbreekt" ziet wanneer u Windows probeert op te starten, dan is dit precies het geval wanneer het ntldr-bestand ontbreekt. Ook kunnen voor de normale werking van ntldr de bestanden bootfont.bin, ntbootdd.sys, ntdetect.com en een correct geschreven boot.ini nodig zijn.

boot.ini voorbeeld

C:\boot.ini

time-out = 8
default=C:\gentoo.bin

C:\gentoo.bin="Gentoo Linux"
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP (32-bit)" /fastdetect /NoExecute=OptIn
multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Windows XP (64-bit)" /fastdetect /usepmtimer

Een voorbeeld van een grub.conf configuratiebestand

#grub.conf gegenereerd door anaconda
#
#Merk op dat je grub niet opnieuw hoeft uit te voeren nadat je wijzigingen in dit bestand hebt aangebracht
#
#OPMERKING: Je hebt een /boot-partitie. Dit betekent dat
#alle kernel- en initrd-paden zijn relatief aan /boot/, bijv.
#root (hdO.O)
#kernel /vmlinuz-versie ro root=/dev/sda2
#initrd/initrd-versie.img
#boot=/dev/sda default=0 timeout=5
splashimage=(hdO,0)/grub/splash.xpm.gz
verborgen menu
titel Red Hat Enterprise Linux-server (2.6.18-53.el 5)
wortel (hdO.O)
kernel /vmlinuz-2.6.18-53.el5 ro root=LABEL=/ rhgb stil-
initrd /initrd-2.6.18-53.el5.img

Structuur van het lilo.conf-bestand

# LILO configuratiebestand gegenereerd door "liloconfig"
//Sectie van de beschrijving van globale parameters
# Start de globale sectie van LILO
// Locatie waar Lilo is opgenomen. In dit geval is het MBR
boot=/dev/hda
//Bericht dat wordt weergegeven tijdens het laden
message=/boot/boot_message.txt
// Geef prompt weer
snel
//Time-out om besturingssysteem te kiezen
time-out = 1200
# Overschrijf gevaarlijke standaardinstellingen die de partitietabel herschrijven:
wijzigingsregels
resetten
# VESA framebuffer console @ 800x600x256
// De videomodus selecteren voor het weergeven van het menu
vga=771
# Einde LILO globale sectie
//Windows opstartopties beschrijving sectie
# Configuratie van DOS opstartbare partitie begint
andere=/dev/hda1
label = Windows98
table=/dev/hda
# Configuratie van DOS opstartbare partitie eindigt
// Sectie voor het beschrijven van de QNX-opstartopties
# QNX opstartbare partitieconfiguratie begint
// Pad naar het besturingssysteem
andere=/dev/hda2
label = QNX
table=/dev/hda
# QNX opstartbare partitieconfiguratie eindigt
//Linux opstartopties beschrijving sectie
# Configuratie van opstartbare Linux-partitie begint
// Pad naar de kernelafbeelding
image = /boot/vmlinuz
root=/dev/hda4
label = Slackware
alleen lezen
# Configuratie van opstartbare Linux-partitie eindigt


2. De meest bekende bestandssystemen.

  • Geavanceerd schijfbestandssysteem
  • AdvFS
  • Be File System
  • CSI - DOS
  • Bestandssysteem versleutelen
  • Uitgebreid bestandssysteem
  • Tweede uitgebreid bestandssysteem
  • Derde uitgebreid bestandssysteem
  • Vierde uitgebreid bestandssysteem
  • Bestandstoewijzingstabel (FAT)
  • Bestanden-11
  • Hiërarchisch bestandssysteem
  • HFS Plus
  • Hoogwaardig bestandssysteem (HPFS)
  • ISO 9660
  • Gejournaliseerd bestandssysteem
  • Macintosh-bestandssysteem
  • MINIX-bestandssysteem
  • microdos
  • Volgende3
  • Nieuwe implementatie van een log-gestructureerde F (NILFS)
  • Novell-opslagservices
  • Nieuw technologiebestandssysteem (NTFS)
  • Protogon
  • ReiserFS
  • Slim bestandssysteem
  • Squashfs
  • Unix-bestandssysteem
  • Universeel schijfformaat (UDF)
  • Veritas-bestandssysteem
  • Toekomstige Windows-opslag (WinFS)
  • Overal schrijven bestandsindeling
  • Zettabyte-bestandssysteem (ZFS)

3. Basiskenmerken van bestandssystemen.

Het besturingssysteem biedt toepassingen een reeks functies en structuren voor het werken met bestanden. De mogelijkheden van het besturingssysteem leggen extra beperkingen op aan de beperkingen van het bestandssysteem, de belangrijkste beperkingen zijn onder meer:

Maximale (minimale) volumegrootte;
- Maximaal (minimaal) aantal bestanden in de rootdirectory;
- Het maximum aantal bestanden in de niet-rootmap;
- Beveiliging op dossierniveau;
- Ondersteuning voor lange bestandsnamen;
- Zelfgenezing;
- Compressie op bestandsniveau;
- Het bijhouden van transactielogboeken;

4. Korte beschrijving van de meest voorkomende bestandssystemen FAT, NTFS, EXT.

FAT-bestandssysteem.

FAT staat voor File Allocation Table.
In het FAT-bestandssysteem is de logische schijfruimte van elke logische schijfeenheid in twee gebieden verdeeld:
- systeemgebied;
- gegevensgebied.
Het systeemgebied wordt gemaakt bij het formatteren en bijgewerkt bij het manipuleren van de bestandsstructuur. Het gegevensgebied bevat bestanden en mappen die ondergeschikt zijn aan de root en is toegankelijk via de gebruikersinterface. Het systeemgebied bestaat uit de volgende componenten:
- opstartrecord;
- gereserveerde sectoren;
- bestandstoewijzingstabellen (FAT);
- rootmap.
De bestandstoewijzingstabel is een kaart (afbeelding) van het gegevensgebied, die de toestand van elke sectie van het gegevensgebied beschrijft. Het datagebied is opgedeeld in clusters. Een cluster is een of meer aaneengesloten sectoren in een logische schijfadresruimte (alleen in het gegevensgebied). In de FAT-tabel zijn clusters die tot hetzelfde bestand behoren (niet-rootdirectory) tot ketens gekoppeld. Het FAT16-bestandsbeheersysteem gebruikt een 16-bits woord om het clusternummer op te geven, zodat u maximaal 65536 clusters kunt hebben.
Een cluster is de kleinste adresseerbare schijfruimte die is toegewezen aan een bestand of een niet-hoofdmap. Een bestand of map neemt een geheel aantal clusters in beslag. In dit geval wordt het laatste cluster mogelijk niet volledig gebruikt, wat zal leiden tot een merkbaar verlies van schijfruimte bij een grote clustergrootte.
Omdat FAT zeer intensief wordt gebruikt bij het benaderen van een schijf, wordt het in het RAM geladen en blijft het daar zo lang mogelijk.
De hoofdmap verschilt van een gewone map doordat deze zich op een vaste locatie op een logische schijfeenheid bevindt en een vast aantal vermeldingen heeft. Voor elk bestand en elke map slaat het bestandssysteem informatie op volgens de volgende structuur:
- bestands- of mapnaam - 11 bytes;
- bestandskenmerken - 1 byte;
- reserveveld - 1 byte;
- aanmaaktijd - 3 bytes;
- aanmaakdatum - 2 bytes;
- datum van laatste toegang - 2 bytes;
- gereserveerd - 2 bytes;
- laatste wijzigingstijd - 2 bytes;
- aanvankelijk clusternummer in FAT - 2 bytes;
- bestandsgrootte - 4 bytes.
De structuur van het bestandssysteem is hiërarchisch.

FAT32-bestandssysteem.
FAT32 is een volledig onafhankelijk 32-bits bestandssysteem en bevat tal van verbeteringen en toevoegingen ten opzichte van FAT16. Het fundamentele verschil tussen FAT32 is een efficiënter gebruik van schijfruimte: FAT32 gebruikt kleinere clusters, wat resulteert in besparingen op schijfruimte.
FAT32 kan de hoofdmap verplaatsen en een FAT-back-up gebruiken in plaats van een standaardback-up. Met de FAT32 Enhanced Boot Record kunt u kopieën maken van kritieke datastructuren, waardoor schijven beter bestand zijn tegen FAT-structuurschendingen dan eerdere versies. De hoofdmap is een regelmatige keten van clusters, zodat deze zich overal op de schijf kan bevinden, waardoor de limiet voor de grootte van de hoofdmap wordt opgeheven.


NTFS-bestandssysteem.
Het NTFS-bestandssysteem (New Technology File System) bevat een aantal belangrijke verbeteringen en wijzigingen die het aanzienlijk onderscheiden van andere bestandssystemen. Vanuit het oogpunt van de gebruiker worden bestanden nog steeds opgeslagen in mappen, maar werken op grote schijven in NTFS is veel efficiënter:
- er zijn middelen om de toegang tot bestanden en mappen te beperken;
- mechanismen geïntroduceerd die de betrouwbaarheid van het bestandssysteem aanzienlijk verhogen;
- veel beperkingen op het maximale aantal schijfsectoren en/of clusters zijn verwijderd.

De belangrijkste kenmerken van het NTFS-bestandssysteem:
- betrouwbaarheid. Krachtige computers en gedeelde systemen moeten een grotere betrouwbaarheid hebben, hiervoor is een transactiemechanisme geïntroduceerd dat bestandsbewerkingen registreert;
- uitgebreide functionaliteit. Er zijn nieuwe functies in NTFS geïntroduceerd: verbeterde fouttolerantie, emulatie van andere bestandssystemen, een krachtig beveiligingsmodel, parallelle verwerking van gegevensstromen, creatie van door de gebruiker gedefinieerde bestandsattributen;
- Ondersteuning voor de POSIX-standaard. Basisfuncties zijn onder meer het optionele gebruik van hoofdlettergevoelige bestandsnamen, opslag van de tijd dat een bestand voor het laatst is geopend en een aliasmechanisme waarmee meerdere namen naar hetzelfde bestand kunnen verwijzen;
- flexibiliteit. De toewijzing van schijfruimte is zeer flexibel: de clustergrootte kan variëren van 512 bytes tot 64 KB.
NTFS werkt goed met grote datasets en grote volumes. De maximale volume- (en bestandsgrootte) is 16 EB. (1 Ebyte is gelijk aan 2**64 of 16.000 miljard gigabyte.) Er is geen limiet aan het aantal bestanden in de root- en niet-rootdirectory's. Aangezien de NTFS-directorystructuur is gebaseerd op een efficiënte gegevensstructuur die een "binaire boom" wordt genoemd, is de NTFS-zoektijd voor bestanden niet lineair gerelateerd aan het aantal bestanden.
NTFS heeft een aantal zelfherstellende functies en ondersteunt verschillende systeemintegriteitscontroles, waaronder transactieregistratie, waarmee u het schrijven van bestanden vanuit het systeemlogboek kunt volgen.
Het NTFS-bestandssysteem ondersteunt het beveiligingsobjectmodel en behandelt alle volumes, mappen en bestanden als afzonderlijke NTFS-objecten. Toegangsrechten tot volumes, mappen en bestanden zijn afhankelijk van het gebruikersaccount en de groep waartoe het behoort.
Het NTFS-bestandssysteem heeft ingebouwde compressie die kan worden toegepast op volumes, mappen en bestanden.

Ext3-bestandssysteem.
Het ext3-bestandssysteem kan bestanden tot 1 TB groot ondersteunen. Met de Linux-kernel 2.4 wordt de grootte van het bestandssysteem beperkt door de maximale grootte van het blokapparaat, die 2 terabyte is. In Linux 2.6 (voor 32-bits processors) is de maximale blokgrootte 16 TB, maar ext3 ondersteunt maximaal 4 TB.
Ext3 heeft een goede NFS-compatibiliteit en heeft geen prestatieproblemen wanneer vrije schijfruimte schaars is.Een ander voordeel van ext3 is het feit dat het gebaseerd is op ext2-code. Het schijfformaat van ext2 en ext3 is identiek; hieruit volgt dat, indien nodig, het ext3-bestandssysteem zonder problemen als ext2 kan worden gemount. En dat is niet alles. Omdat ext2 en ext3 identieke metadata gebruiken, is het mogelijk om ext2 online te updaten naar ext3.
Ext3 Betrouwbaarheid
Behalve dat het ext2-compatibel is, erft ext3 andere voordelen van het algemene metadataformaat. ext3-gebruikers hebben jarenlang de beproefde fsck-tool tot hun beschikking. De belangrijkste reden om over te schakelen naar een journaling-bestandssysteem is natuurlijk het elimineren van de noodzaak van periodieke en lange controles op de consistentie van metadata op de schijf. "Journaling" kan echter niet beschermen tegen kernelcrashes of schade aan het schijfoppervlak (of iets dergelijks). In een noodgeval zult u het op prijs stellen dat ext3 erft van ext2 met zijn fsck.
Journaling in ext3.
Nu we een algemeen begrip van het probleem hebben, gaan we eens kijken hoe ext3 journaling implementeert. De journaalcode voor ext3 gebruikt een speciale API die de Journaling Block Device-laag of JBD wordt genoemd. JBD is ontworpen om op elk blokapparaat in te loggen. Ext3 is gebonden aan de JBD API. In dit geval informeert de ext3-bestandssysteemcode de JBD over de noodzaak van een wijziging en vraagt ​​de JBD om toestemming om deze uit te voeren. Het journaal wordt beheerd door de JBD namens het ext3-bestandssysteemstuurprogramma. Deze conventie is erg handig, aangezien de JBD wordt ontwikkeld als een aparte, generieke entiteit en in de toekomst kan worden gebruikt om in te loggen op andere bestandssystemen.
Gegevensbescherming in Ext3
Nu kunnen we praten over hoe het ext3-bestandssysteem logging biedt voor zowel data als metadata. In feite heeft ext3 twee methoden om consistentie te garanderen.
ext3 is oorspronkelijk ontworpen voor het bijhouden van volledige gegevens en metagegevens. In deze modus (de "data=journal"-modus) registreert JBD alle wijzigingen aan het bestandssysteem die betrekking hebben op zowel gegevens als metagegevens. In dit geval kan JBD het logboek gebruiken om metagegevens en gegevens terug te draaien en te herstellen. Het nadeel van "volledige" journaling is de nogal lage prestatie en het verbruik van een grote hoeveelheid schijfruimte voor het journaal.
Onlangs is een nieuwe journaalmodus toegevoegd aan ext3 die hoge prestaties combineert met de zekerheid dat de structuur van het bestandssysteem consistent is na een crash (zoals "gewone" gejournaliseerde bestandssystemen). De nieuwe werkwijze bedient alleen metadata. Het stuurprogramma van het ext3-bestandssysteem houdt echter nog steeds de verwerking van volledige gegevensblokken bij (als ze verband houden met het wijzigen van metagegevens) en groepeert ze in een enkel object dat een transactie wordt genoemd. De transactie wordt pas voltooid nadat alle gegevens naar de schijf zijn geschreven. Een "neveneffect" van deze "brute force"-techniek ("data=ordered"-modus genoemd) is dat ext3 een grotere kans op datapersistentie biedt (vergeleken met "geavanceerde" journaling-bestandssystemen) terwijl de consistentie van metagegevens wordt gegarandeerd. Hiermee worden alleen wijzigingen in de structuur van het bestandssysteem geregistreerd. Ext3 gebruikt deze modus standaard.
ext3 heeft veel voordelen. Het is ontworpen voor maximaal gebruiksgemak. Het is gebaseerd op jarenlange bewezen ext2-code en heeft de prachtige fsck-tool geërfd. Ext3 is in de eerste plaats bedoeld voor toepassingen die geen ingebouwde gegevensretentiemogelijkheden hebben. Al met al is ext3 een uitstekend bestandssysteem en een waardige voortzetting van ext 2. Er is nog een ander kenmerk dat ext3 positief onderscheidt van andere journaled bestandssystemen onder Linux - hoge betrouwbaarheid.

Het ext4-bestandssysteem is een waardige evolutionaire voortzetting van het ext-systeem.

Algemene informatie over bestandssystemen

Het besturingssysteem Windows 8 ondersteunt verschillende bestandssystemen: NTFS, FAT en FAT32. Maar het kan alleen maar werken NTFS, dat wil zeggen, het kan alleen worden geïnstalleerd op een harde schijfpartitie die is geformatteerd in dit bestandssysteem. Dit komt door de functies en beveiligingshulpmiddelen die in NTFS, maar ontbreken in de vorige generatie Windows-bestandssystemen: FAT16 En FAT32. Vervolgens zullen we ons concentreren op de hele reeks bestandssystemen voor Windows om te begrijpen welke rol ze spelen in de werking van het systeem en hoe ze zich hebben ontwikkeld tijdens het proces om Windows te worden, tot aan Windows 8.

Voordelen: NTFS hebben betrekking op bijna alles: prestaties, betrouwbaarheid en efficiëntie van het werken met gegevens (bestanden) op de schijf. Dus, een van de belangrijkste doelen van het creëren NTFS moest zorgen voor snelle uitvoering van bewerkingen op bestanden (kopiëren, lezen, verwijderen, schrijven), en het bieden van extra functies: gegevenscompressie, herstel van beschadigde systeembestanden op grote schijven, enz.

Een ander hoofddoel van het maken: NTFS er was een implementatie van verhoogde beveiligingsvereisten, aangezien bestandssystemen VET, FAT32 waren in dit opzicht helemaal niet goed. precies bij NTFS u kunt de toegang tot elk bestand of elke map toestaan ​​of weigeren (toegangsrechten afbakenen).


Laten we eerst eens kijken naar de vergelijkende kenmerken van bestandssystemen, en dan nader ingaan op elk van hen. Vergelijking, voor meer duidelijkheid, wordt gegeven in tabelvorm.

Bestandssysteem VET is simpelweg niet geschikt voor moderne harde schijven (vanwege de beperkte mogelijkheden). Betreft FAT32, dan kan het nog steeds worden gebruikt, maar met een rek. Als u een harde schijf van 1000 GB koopt, moet u deze in ten minste een paar partities partitioneren. En als je aan videobewerking gaat doen, zul je erg gestoord zijn 4 GB limiet als de maximaal mogelijke bestandsgrootte.

Het bestandssysteem is beroofd van alle genoemde tekortkomingen. NTFS. Dus zonder zelfs maar in te gaan op de details en speciale kenmerken van het bestandssysteem NTFS, kunt u een keuze in haar voordeel maken.

Bestand
systeem
Parameters:
Volume maten Maximale bestandsgrootte
VET Van 1,44 MB tot 4 GB 2GB
FAT32 Theoretisch is een volumegrootte van 512 MB tot 2 TB mogelijk. Compressie wordt niet ondersteund op bestandssysteemniveau 4GB
NTFS De minimaal aanbevolen grootte is 1,44 MB en de maximale grootte is 2 TB. Ondersteuning voor compressie op bestandssysteemniveau voor bestanden, mappen en volumes. De maximale grootte wordt alleen beperkt door de grootte van het volume (theoretisch - 264 bytes minus 1 kilobyte. Praktisch - 244 bytes minus 64 kilobytes)

Algemeen gebruik FAT32 kan alleen worden gerechtvaardigd in gevallen waarin u verschillende besturingssystemen op uw computer hebt geïnstalleerd en geen van deze ondersteunt NTFS. Maar vandaag zijn er praktisch geen. Tenzij je antiek zoals Windows 98 wilt installeren.

FAT-bestandssysteem

Bestandssysteem VET(meestal betekent het: VET 16) is lang geleden ontwikkeld en was bedoeld om te werken met kleine schijf- en bestandsvolumes, een eenvoudige directorystructuur. Afkorting VET betekent Bestandstoewijzingstabel(uit de Engelse bestandstoewijzingstabel). Deze tabel wordt aan het begin van het volume geplaatst en er worden twee exemplaren van bewaard (om voor meer stabiliteit te zorgen).
Deze tabel wordt door het besturingssysteem gebruikt om het bestand te vinden en de fysieke locatie op de harde schijf te bepalen. Als de tabel (en de kopie) beschadigd is, kan het besturingssysteem de bestanden niet lezen. Het kan eenvoudigweg niet bepalen welk bestand dat is, waar het begint en waar het eindigt. In dergelijke gevallen zou het bestandssysteem zijn "gevallen".
Bestandssysteem VET oorspronkelijk ontwikkeld door Microsoft voor diskettes. Pas toen begonnen ze het toe te passen op harde schijven. In het begin was het FAT12(voor diskettes en harde schijven tot 16 MB), en toen groeide het uit tot FAT16, die werd geïntroduceerd met het MS-DOS 3.0-besturingssysteem.

FAT32-bestandssysteem

Vanaf Windows 95 OSR2 begint Microsoft actief gebruik te maken van hun besturingssystemen FAT32- 32-bits versie VET. Wat te doen, technologische vooruitgang staat niet stil en kansen VET 16 duidelijk niet genoeg.
Vergeleken met haar FAT32 begon meer optimale toegang tot schijven te bieden, snellere I / O-bewerkingen, evenals ondersteuning voor grote bestandsvolumes (schijfgrootte tot 2 TB).
IN FAT32 een efficiënter gebruik van schijfruimte geïmplementeerd (door kleinere clusters te gebruiken). Voordeel ten opzichte van FAT16 is ongeveer 10...15%. Dat wil zeggen, bij gebruik van FAT32 10 ... 15% meer informatie kan naar dezelfde schijf worden geschreven dan bij gebruik van FAT16.
Bovendien moet worden opgemerkt dat: FAT32 biedt een hogere betrouwbaarheid en een hogere snelheid van programmastart.
Dit is te danken aan twee belangrijke innovaties:
de mogelijkheid om de hoofdmap en back-up te verplaatsen VET(als de hoofdkopie beschadigd is)

De mogelijkheid om een ​​reservekopie van systeemgegevens op te slaan.

NTFS-bestandssysteem

Algemene informatie
Geen van de versies van FAT biedt een acceptabel beveiligingsniveau. Dit, evenals de behoefte aan aanvullende bestandsmechanismen (compressie, codering) leidde tot de noodzaak om een ​​fundamenteel nieuw bestandssysteem te creëren. En het werd het bestandssysteem NT (NTFS)
NTFS- van Engels. Nieuw technologie bestandssysteem - nieuwe technologie bestandssysteem
Zoals eerder vermeld, is het belangrijkste voordeel beveiliging: voor bestanden en mappen NTFS toegangsrechten (voor lezen, schrijven, etc.) kunnen worden toegekend. Dit verbeterde de gegevensbeveiliging en de systeemstabiliteit aanzienlijk. Door toegangsrechten toe te wijzen, kunt u gebruikers en programma's verbieden/toestaan ​​om bewerkingen op bestanden uit te voeren. Zonder voldoende rechten kan een externe gebruiker bijvoorbeeld geen enkel bestand wijzigen. Of, nogmaals, zonder voldoende rechten kan het virus het bestand niet beschadigen.
Daarnaast, NTFS, zoals hierboven vermeld, biedt betere prestaties en de mogelijkheid om met grote hoeveelheden gegevens te werken.

Vanaf Windows 2000 is de gebruikte versie: NTFS 5.0, waarmee u, naast de standaardfuncties, de volgende functies kunt implementeren:

Data encryptie- deze functie wordt geïmplementeerd door een speciale NTFS-add-on genaamd Bestandssysteem versleutelen(EFS)- Versleuteling van het bestandssysteem. Dankzij dit mechanisme kunnen versleutelde gegevens alleen worden uitgelezen op de computer waarop de versleuteling heeft plaatsgevonden.
Schijfquota- het is mogelijk geworden om gebruikers een bepaalde (beperkte) grootte op de schijf toe te wijzen die ze kunnen gebruiken.
Efficiënte opslag van schaarse bestanden. Er zijn bestanden die een groot aantal opeenvolgende lege bytes bevatten. Met het NTFS-bestandssysteem kunt u hun opslag optimaliseren.

De changelog gebruiken- hiermee kunt u alle toegangsbewerkingen tot bestanden en volumes loggen.

En nog een innovatie van NTFS - bevestigingspunten. Met koppelpunten kunt u verschillende niet-gerelateerde mappen en zelfs stations in het systeem definiëren als een enkele schijf of map. Dit is van groot belang om de heterogene informatie die in het systeem zit op één plek te verzamelen.

■ Houd er ten slotte rekening mee dat als een bestand onder NTFS bepaalde machtigingen had en u het vervolgens naar een FAT-partitie kopieerde, alle machtigingen en andere unieke kenmerken die inherent zijn aan NTFS verloren gaan. Wees dus waakzaam.

NTFS-apparaat. Hoofdtabel van MFT-bestanden.
Net als elk ander bestandssysteem verdeelt NTFS alle bruikbare ruimte in: clusters zijn de minimale datablokken waarin bestanden zijn verdeeld. NTFS ondersteunt bijna elke clustergrootte - van 512 bytes tot 64 KB. De algemeen aanvaarde standaard is echter een cluster van 4 KB. Dat is wat standaard wordt gebruikt. Het principe van het bestaan ​​van clusters kan worden geïllustreerd aan de hand van het volgende voorbeeld.
Als uw clustergrootte 4 KB is (wat het meest waarschijnlijk is), en u moet een bestand van 5 KB opslaan, dan wordt er daadwerkelijk 8 KB voor toegewezen, aangezien het niet in één cluster past en alleen clusters schijfruimte toewijzen voor het bestand.
Elke NTFS-schijf heeft een speciaal bestand - MFT (hoofdtoewijzingstabel). Dit bestand bevat een gecentraliseerde map met alle bestanden op de schijf. Bij het maken van een bestand maakt en vult NTFS in MFT het bijbehorende item, dat informatie bevat over de kenmerken van het bestand, de inhoud van het bestand, de bestandsnaam, enzovoort.

Losstaand van MFT, zijn er nog 15 speciale bestanden (samen met MFT - 16) die niet toegankelijk zijn voor het besturingssysteem en worden genoemd metabestanden. De namen van iedereen metabestanden beginnen met een karakter $ , maar met standaard middelen van het besturingssysteem is het niet mogelijk om ze te bekijken en ze helemaal niet te zien. Hier zijn de belangrijkste metabestanden als voorbeeld:

SMFT- de MFT zelf.
$MFTmirr- een kopie van de eerste 16 MFT-records die in het midden van de schijf zijn geplaatst (spiegel).
$logbestand- ondersteuningsbestand loggen.
$Volume- service-informatie: volumelabel, bestandssysteemversie, enz.
$AttrDef- lijst met standaard bestandskenmerken op het volume.
$. - rootmap.
$Bitmap- vrije ruimtekaart van het volume.
$boot- opstartsector (als de partitie opstartbaar is).
$Quota- een bestand dat gebruikersrechten bevat om schijfruimte te gebruiken.
$upcase- bestandstabel van correspondentie tussen hoofdletters en kleine letters in bestandsnamen op het huidige volume.
Het is vooral nodig omdat in NTFS bestandsnamen zijn gecodeerd Unicode, die uit 65 duizend verschillende karakters bestaat, is het niet triviaal om grote en kleine equivalenten ervan te zoeken.
Wat betreft het principe van het organiseren van gegevens op een NTFS-schijf, het is voorwaardelijk verdeeld in twee delen. De eerste 12% van de schijf is gereserveerd voor de zogenaamde MFT-zone- de ruimte waarin het MFT-metabestand groeit.
Het is niet mogelijk om gebruikersgegevens naar dit gebied te schrijven. Het MFT-gebied wordt altijd leeg gehouden. Dit wordt gedaan zodat het hoofdservicebestand (MFT) niet gefragmenteerd raakt naarmate het groeit. De resterende 88% van de schijf is gewoon normale opslagruimte voor bestanden.
Als er echter niet genoeg schijfruimte is, kan de MFT-zone zelf krimpen (indien mogelijk), zodat u geen ongemak zult merken. In dit geval worden er al nieuwe gegevens naar de voormalige MFT-zone geschreven.
Bij een latere vrijgave van schijfruimte zal de MFT-zone echter weer toenemen in gedefragmenteerde vorm (dus niet in een enkel blok, maar in meerdere delen op de schijf). Daar is niets mis mee, alleen wordt het systeem als betrouwbaarder beschouwd als: MFT-bestand niet gedefragmenteerd. Bovendien werkt met een niet-gedefragmenteerd MFT-bestand het hele bestandssysteem sneller. Dienovereenkomstig, hoe meer gedefragmenteerd het MFT-bestand is, hoe langzamer het bestandssysteem werkt.

De grootte van het MFT-bestand wordt ruwweg berekend op basis van 1 MB per 1000 bestanden.


Converteer FAT32-partities naar NTFS zonder gegevensverlies. hulpprogramma converteren

U kunt een bestaande FAT32-partitie eenvoudig converteren naar NTFS. Om dit te doen, biedt Windows 8, Windows 8.1 een opdrachtregelhulpprogramma overzetten

De parameters van zijn werk worden weergegeven in de schermafbeelding.

Om de D:-schijf naar NTFS te converteren, voert u dus de volgende opdracht in op de opdrachtregel:

Daarna wordt u gevraagd om het volumelabel in te voeren, indien van toepassing (het volumelabel wordt aangegeven naast de schijfnaam in de Mijn computer. Het dient om schijven in meer detail te identificeren en kan al dan niet worden gebruikt. Het kan bijvoorbeeld zijn: Bestandsopslag (D:).
Om een ​​flashstation te converteren, ziet de opdracht er als volgt uit:

converteer e : /fs:ntfs /nosecurity /x