Overzicht van FAT-, HPFS- en NTFS-bestandssystemen

In dit artikel worden de verschillen tussen File Allocation Table (FAT), HPFS (High Performance File System) en NT File System (NTFS) onder Windows NT uitgelegd, en hun voor- en nadelen.

Van toepassing op: Windows 10 - alle edities, Windows Server 2012 R2
Origineel KB-nummer: 100108

Opmerking

HPFS wordt alleen ondersteund onder Windows NT-versies 3.1, 3.5 en 3.51. Windows NT 4.0 biedt geen ondersteuning voor HPFS-partities en heeft geen toegang tot HPFS-partities. Ook werd ondersteuning voor het FAT32-bestandssysteem beschikbaar in Windows 98/Windows 95 OSR2 en Windows 2000.

FAT-overzicht

FAT is veruit de meest simplistische van de bestandssystemen die worden ondersteund door Windows NT. Het FAT-bestandssysteem wordt gekenmerkt door de tabel voor bestandstoewijzing (FAT), die in feite een tabel is die zich helemaal bovenaan het volume bevindt. Ter bescherming van het volume worden twee exemplaren van de FAT bewaard voor het geval er één beschadigd raakt. Daarnaast moeten de FAT-tabellen en de hoofdmap op een vaste locatie worden opgeslagen, zodat de opstartbestanden van het systeem correct kunnen worden gevonden.

Een schijf die is geformatteerd met FAT, wordt toegewezen in clusters, waarvan de grootte wordt bepaald door de grootte van het volume. Wanneer een bestand wordt gemaakt, wordt er een vermelding gemaakt in de map en wordt het eerste clusternummer met gegevens tot stand gebracht. Deze vermelding in de FAT-tabel geeft aan dat dit het laatste cluster van het bestand is of verwijst naar het volgende cluster.

Het bijwerken van de FAT-tabel is zeer belangrijk en tijdrovend. Als de FAT-tabel niet regelmatig wordt bijgewerkt, kan dit leiden tot gegevensverlies. Dit is tijdrovend omdat de leeskoppen van de schijf moeten worden verplaatst naar het logische spoor nul van het station telkens wanneer de FAT-tabel wordt bijgewerkt.

Er is geen organisatie voor de FAT-mapstructuur en bestanden krijgen de eerste open locatie op het station. Bovendien ondersteunt FAT alleen alleen-lezen, verborgen, systeem- en archiefbestandskenmerken.

FAT-naamconventie

FAT maakt gebruik van de traditionele 8.3-naamgevingsconventie voor bestanden en alle bestandsnamen moeten worden gemaakt met de ASCII-tekenset. De naam van een bestand of map kan maximaal acht tekens lang zijn, vervolgens een puntscheidingsteken (.) en een extensie van maximaal drie tekens. De naam moet beginnen met een letter of een getal en mag tekens bevatten, met uitzondering van het volgende:

. " / \ [ ] : ; | = ,

Als een van deze tekens wordt gebruikt, kunnen onverwachte resultaten optreden. De naam mag geen spaties bevatten.

De volgende namen zijn gereserveerd:

CON, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LPT3, PRN, NUL

Alle tekens worden geconverteerd naar hoofdletters.

Voordelen van FAT

Het is niet mogelijk om een ongedaan maken van de verwijdering onder Windows NT uit te voeren op een van de ondersteunde bestandssystemen. Hulpprogramma's voor ongedaan maken proberen rechtstreeks toegang te krijgen tot de hardware, wat niet kan worden gedaan onder Windows NT. Als het bestand zich echter op een FAT-partitie bevond en het systeem opnieuw wordt opgestart onder MS-DOS, kan het bestand ongedaan worden gemaakt. Het FAT-bestandssysteem is het beste voor stations en/of partities onder ongeveer 200 MB, omdat FAT begint met zeer weinig overhead. Zie het volgende voor meer informatie over FAT-voordelen:

  • Windows NT Server 'Concepten en planningshandleiding', hoofdstuk 5, sectie getiteld 'Een bestandssysteem kiezen'

  • Windows NT Workstation 4.0 Resource Kit, Hoofdstuk 18, 'Een bestandssysteem kiezen'

  • Windows NT Server 4.0 Resource Kit "Resource Guide", hoofdstuk 3, sectie getiteld "Welk bestandssysteem te gebruiken op welke volumes"

Nadelen van FAT

Bij voorkeur moet bij gebruik van stations of partities van meer dan 200 MB het FAT-bestandssysteem niet worden gebruikt. Dit komt doordat naarmate de grootte van het volume toeneemt, de prestaties met FAT snel afnemen. Het is niet mogelijk om machtigingen in te stellen voor bestanden die FAT-partities zijn.

FAT-partities zijn beperkt in grootte tot maximaal 4 GIGABYTE (GB) onder Windows NT en 2 GB in MS-DOS.

Zie het volgende voor meer informatie over andere nadelen van FAT:

  • Windows NT Server 'Concepten en planningshandleiding', hoofdstuk 5, sectie getiteld 'Een bestandssysteem kiezen'

  • Windows NT Workstation 4.0 Resource Kit, Hoofdstuk 18, 'Een bestandssysteem kiezen'

  • Microsoft Windows NT Server 4.0 Resource Kit "Resource Guide", hoofdstuk 3, sectie getiteld "Welk bestandssysteem te gebruiken op welke volumes"

OVERZICHT VAN HPFS

Het HPFS-bestandssysteem werd voor het eerst geïntroduceerd met OS/2 1.2 om meer toegang te bieden tot de grotere harde schijven die toen op de markt verschenen. Daarnaast was het nodig voor een nieuw bestandssysteem om het naamgevingssysteem, de organisatie en de beveiliging uit te breiden voor de groeiende vraag van de markt voor netwerkservers. HPFS onderhoudt de directory-organisatie van FAT, maar voegt automatische sortering van de map toe op basis van bestandsnamen. Bestandsnamen worden uitgebreid tot maximaal 254 dubbele bytes. MET HPFS kan een bestand ook bestaan uit 'gegevens' en speciale kenmerken om meer flexibiliteit te bieden bij het ondersteunen van andere naamconventies en beveiliging. Bovendien wordt de toewijzingseenheid gewijzigd van clusters in fysieke sectoren (512 bytes), waardoor er minder schijfruimte verloren gaat.

Onder HPFS bevatten directory-vermeldingen meer informatie dan onder FAT. Naast het kenmerkbestand bevat dit informatie over de wijziging, het maken en de toegangsdatum en -tijden. In plaats van naar het eerste cluster van het bestand te verwijzen, verwijzen de mapvermeldingen onder HPFS naar de FNODE. De FNODE kan de gegevens van het bestand bevatten, of aanwijzers die kunnen verwijzen naar de gegevens van het bestand of naar andere structuren die uiteindelijk naar de gegevens van het bestand verwijzen.

HPFS probeert zoveel mogelijk van een bestand toe te wijzen in aaneengesloten sectoren. Dit wordt gedaan om de snelheid te verhogen bij het uitvoeren van sequentiële verwerking van een bestand.

HPFS organiseert een station in een reeks van 8 MB-banden en indien mogelijk wordt een bestand in een van deze banden opgenomen. Tussen elk van deze banden bevinden zich 2K-toewijzings bitmaps, die bijhouden welke sectoren binnen een band wel en niet zijn toegewezen. Banderen verbetert de prestaties omdat de stationskop niet hoeft terug te keren naar de logische bovenkant (meestal cilinder 0) van de schijf, maar naar de dichtstbijzijnde bandtoewijzings bitmap om te bepalen waar een bestand moet worden opgeslagen.

Daarnaast bevat HPFS een aantal unieke speciale gegevensobjecten:

Superblok

Het superblok bevindt zich in logische sector 16 en bevat een aanwijzer naar de FNODE van de hoofdmap. Een van de grootste gevaren van het gebruik van HPFS is dat als het Super Block verloren of beschadigd is vanwege een slechte sector, dat ook de inhoud van de partitie is, zelfs als de rest van het station in orde is. Het zou mogelijk zijn om de gegevens op het station te herstellen door alles te kopiëren naar een ander station met een goede sector 16 en het superblok opnieuw te bouwen. Dit is echter een zeer complexe taak.

Reserveblok

Het reserveblok bevindt zich in logische sector 17 en bevat een tabel met 'hot fixes' en het Spare Directory-blok. Wanneer onder HPFS een slechte sector wordt gedetecteerd, wordt de vermelding 'hot fixes' gebruikt om logisch te verwijzen naar een bestaande goede sector in plaats van de slechte sector. Deze techniek voor het afhandelen van schrijffouten staat bekend als hotfixing.

Hotfixing is een techniek waarbij als er een fout optreedt vanwege een slechte sector, het bestandssysteem de informatie verplaatst naar een andere sector en de oorspronkelijke sector als slecht markeert. Dit is allemaal transparant voor toepassingen die schijf-I/O uitvoeren (dat wil zeggen, de toepassing weet nooit dat er problemen zijn met de harde schijf). Als u een bestandssysteem gebruikt dat ondersteuning biedt voor hotfixing, worden foutberichten zoals het FAT-foutbericht 'Afbreken, Opnieuw proberen of Mislukken?' geëlimineerd dat optreedt wanneer er een ongeldige sector wordt aangetroffen.

Opmerking

De versie van HPFS die is opgenomen in Windows NT biedt geen ondersteuning voor hotfixing.

Voordelen van HPFS

HPFS is het beste voor schijven in het bereik van 200-400 MB. Zie het volgende voor meer informatie over de voordelen van HPFS:

  • Windows NT Server 'Concepten en planningshandleiding', hoofdstuk 5, sectie getiteld 'Een bestandssysteem kiezen'

  • Windows NT Workstation 4.0 Resource Kit, Hoofdstuk 18, 'Een bestandssysteem kiezen'

  • Windows NT Server 4.0 Resource Kit "Resource Guide", hoofdstuk 3, sectie getiteld "Welk bestandssysteem te gebruiken op welke volumes"

Nadelen van HPFS

Vanwege de overhead bij HPFS is het geen erg efficiënte keuze voor een volume van minder dan ongeveer 200 MB. Bovendien zal er bij volumes die groter zijn dan ongeveer 400 MB, enige prestatievermindering optreden. U kunt geen beveiliging instellen voor HPFS onder Windows NT.

HPFS wordt alleen ondersteund onder Windows NT-versies 3.1, 3.5 en 3.51. Windows NT 4.0 heeft geen toegang tot HPFS-partities.

Zie het volgende voor extra nadelen van HPFS:

  • Windows NT Server 'Concepten en planningshandleiding', hoofdstuk 5, sectie getiteld 'Een bestandssysteem kiezen'

  • Windows NT Workstation 4.0 Resource Kit, Hoofdstuk 18, 'Een bestandssysteem kiezen'

  • Windows NT Server 4.0 Resource Kit "Resource Guide", hoofdstuk 3, sectie getiteld "Welk bestandssysteem te gebruiken op welke volumes"

NTFS-overzicht

Vanuit het oogpunt van een gebruiker blijft NTFS bestanden ordenen in mappen, die, zoals HPFS, worden gesorteerd. In tegenstelling tot FAT of HPFS zijn er echter geen 'speciale' objecten op de schijf en is er geen afhankelijkheid van de onderliggende hardware, zoals 512-bytessectoren. Bovendien zijn er geen speciale locaties op de schijf, zoals FAT-tabellen of HPFS-superblokken.

De doelstellingen van NTFS zijn het volgende te bieden:

  • Betrouwbaarheid, wat met name wenselijk is voor high-end systemen en bestandsservers

  • Een platform voor extra functionaliteit

  • Ondersteuning voor POSIX-vereisten

  • Verwijdering van de beperkingen van de FAT- en HPFS-bestandssystemen

Betrouwbaarheid

Om de betrouwbaarheid van NTFS te garanderen, zijn drie belangrijke gebieden aangepakt: herstelbaarheid, verwijdering van fatale storingen in één sector en hotfixing.

NTFS is een herstelbaar bestandssysteem omdat het transacties op het bestandssysteem bijhoudt. Wanneer een CHKDSK wordt uitgevoerd op FAT of HPFS, wordt de consistentie van aanwijzers in de map, toewijzing en bestandstabellen gecontroleerd. Onder NTFS wordt een logboek van transacties voor deze onderdelen bijgehouden, zodat CHKDSK alleen transacties hoeft terug te draaien naar het laatste doorvoerpunt om de consistentie binnen het bestandssysteem te herstellen.

Als onder FAT of HPFS een sector met de locatie van een van de speciale objecten van het bestandssysteem mislukt, treedt er één sectorfout op. NTFS voorkomt dit op twee manieren: ten eerste door geen speciale objecten op de schijf te gebruiken en alle objecten die zich op de schijf bevinden bij te houden en te beveiligen. Ten tweede worden onder NTFS meerdere kopieën (het aantal is afhankelijk van de volumegrootte) van de hoofdbestandstabel bewaard.

Net als bij OS/2-versies van HPFS ondersteunt NTFS hotfixing.

Toegevoegde functionaliteit

Een van de belangrijkste ontwerpdoelen van Windows NT op elk niveau is om een platform te bieden dat kan worden toegevoegd aan en waarop kan worden gebouwd, en NTFS is geen uitzondering. NTFS biedt een uitgebreid en flexibel platform voor andere bestandssystemen om te kunnen gebruiken. Bovendien ondersteunt NTFS het Windows NT-beveiligingsmodel volledig en ondersteunt meerdere gegevensstromen. Een gegevensbestand is niet langer één gegevensstroom. Ten slotte kan een gebruiker onder NTFS zijn of haar eigen door de gebruiker gedefinieerde kenmerken toevoegen aan een bestand.

POSIX-ondersteuning

NTFS is de meest compatibele POSIX.1 van de ondersteunde bestandssystemen omdat het de volgende POSIX.1-vereisten ondersteunt:

Hoofdlettergevoelige naamgeving:

Onder POSIX zijn README.TXT, Readme.txt en readme.txt allemaal verschillende bestanden.

Extra tijdstempel:

Het extra tijdstempel geeft het tijdstip aan waarop het bestand voor het laatst is geopend.

Vaste koppelingen:

Een vaste koppeling is wanneer twee verschillende bestandsnamen, die zich in verschillende mappen kunnen bevinden, verwijzen naar dezelfde gegevens.

Beperkingen verwijderen

Ten eerste heeft NTFS de grootte van bestanden en volumes aanzienlijk vergroot, zodat ze nu maximaal 2^64 bytes (16 exabytes of 18.446.744.073.709.551.616 bytes) kunnen zijn. NTFS is ook teruggekomen naar het FAT-concept van clusters om HPFS-probleem met een vaste sectorgrootte te voorkomen. Dit is gedaan omdat Windows NT een draagbaar besturingssysteem is en er waarschijnlijk op een bepaald moment verschillende schijftechnologie wordt aangetroffen. Daarom werd 512 bytes per sector gezien als een grote mogelijkheid om niet altijd goed geschikt te zijn voor de toewijzing. Dit is bereikt door toe te staan dat het cluster wordt gedefinieerd als veelvouden van de natuurlijke toewijzingsgrootte van de hardware. Ten slotte zijn in NTFS alle bestandsnamen gebaseerd op Unicode en worden 8.3-bestandsnamen samen met lange bestandsnamen bewaard.

Voordelen van NTFS

NTFS is het beste voor gebruik op volumes van ongeveer 400 MB of meer. Dit komt doordat de prestaties niet afnemen onder NTFS, zoals onder FAT, met grotere volumegrootten.

De herstelbaarheid die is ontworpen in NTFS is zodanig dat een gebruiker nooit een soort schijfherstelprogramma op een NTFS-partitie hoeft uit te voeren. Zie het volgende voor aanvullende voordelen van NTFS:

  • Windows NT Server 'Concepten en planningshandleiding', hoofdstuk 5, sectie getiteld 'Een bestandssysteem kiezen'

  • Windows NT Workstation 4.0 Resource Kit, Hoofdstuk 18, 'Een bestandssysteem kiezen'

  • Windows NT Server 4.0 Resource Kit "Resource Guide", hoofdstuk 3, sectie getiteld "Welk bestandssysteem te gebruiken op welke volumes"

Nadelen van NTFS

Het wordt niet aanbevolen om NTFS te gebruiken op een volume dat kleiner is dan ongeveer 400 MB, vanwege de hoeveelheid ruimteoverhead bij NTFS. Deze ruimteoverhead heeft de vorm van NTFS-systeembestanden die doorgaans ten minste 4 MB schijfruimte gebruiken op een partitie van 100 MB.

Er is momenteel geen bestandsversleuteling ingebouwd in NTFS. Daarom kan iemand opstarten onder MS-DOS of een ander besturingssysteem en een hulpprogramma voor schijfbewerking op laag niveau gebruiken om gegevens te bekijken die zijn opgeslagen op een NTFS-volume.

Het is niet mogelijk om een diskette te formatteren met het NTFS-bestandssysteem; Windows NT formatteert alle diskettes met het FAT-bestandssysteem omdat de overhead van NTFS niet op een diskette past.

Zie het volgende voor meer informatie over NTFS-nadelen:

  • Windows NT Server 'Concepten en planningshandleiding', hoofdstuk 5, sectie getiteld 'Een bestandssysteem kiezen'

  • Windows NT Workstation 4.0 Resource Kit, Hoofdstuk 18, 'Een bestandssysteem kiezen'

  • Windows NT Server 4.0 Resource Kit "Resource Guide", hoofdstuk 3, sectie getiteld "Welk bestandssysteem te gebruiken op welke volumes"

NTFS-naamconventies

Bestands- en mapnamen kunnen maximaal 255 tekens lang zijn, inclusief extensies. Namen behouden hoofdletters, maar zijn niet hoofdlettergevoelig. NTFS maakt geen onderscheid tussen bestandsnamen op basis van hoofdletters. Namen kunnen tekens bevatten, met uitzondering van de volgende:

? " / \ < > * | :

Op dit moment kunt u vanaf de opdrachtregel alleen bestandsnamen van maximaal 253 tekens maken.

Opmerking

Onderliggende hardwarebeperkingen kunnen extra partitiegroottebeperkingen in elk bestandssysteem opleggen. Met name een opstartpartitie kan slechts 7,8 GB groot zijn en er is een beperking van 2 terabyte in de partitietabel.

Zie de Windows NT Resource Kit voor meer informatie over de ondersteunde bestandssystemen voor Windows NT.