1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Trophäen
  4. Forum
    1. Unerledigte Themen
  5. Artikel
  6. Lexicon
  • Login
  • Register
  • Search
Lexicon
  • Everywhere
  • Articles
  • Pages
  • Forum
  • Lexicon
  • More Options
  1. Deutsches Raspberry Pi Forum
  2. Lexicon

FAT

  • Forwared from „exFAT“
  • schlizbäda
  • May 26, 2024 at 8:06 PM
  • June 17, 2025 at 6:37 PM
  • 912 times viewed
  • FAT steht für File Allocation Table und ist ein Dateisystem (Filesystem) zur Verwaltung der Daten und Einzeldateien auf einem nicht-flüchtigen (persistenten) Datenträger (Diskette, Festplatte, Speicherkarte, USB-Laufwerk, ...). Ein Dateisystem ist eine Art Inhaltsverzeichnis (TOC, Table of Contents), in dem die Startadressen (Sektoren) von gespeicherten Dateien auf dem Datenträger abgelegt sind.

    Die heutige Verwendung ist hauptsächlich auf USB-Sticks, die häufig bereits werkseitig damit formatiert werden.

    FAT steht für File Allocation Table und ist ein Dateisystem zur Verwaltung der Daten und Einzeldateien auf einem nicht-flüchtigen Datenträger wie Disketten, Festplatten oder Speicherkarten. Es ist eine Art Inhaltverzeichnis, das die Startadressen (Startsektoren) aller Dateien enthält, so dass auf den Inhalt zugegriffen werden kann. Es kam seit 1981 auf dem PC-Betriebssystem DOS zum Einsatz.

    Auf den ersten Sektoren eines Speichermediums befindet sich ein Bereich, der für das FAT-Dateisystem (Inhaltsverzeichnis) reserviert ist. Dort befindet sich eine strukturierte Liste aller Dateien mit Dateinamen, Größe, Erstellungsdatum, einigen weiteren Informationen und (ganz wichtig) dem Startsektor. Desweiteren befindet sich im FAT-Bereich ein Abbild aller Sektoren, das den nächsten Sektor einer Datei enthält oder einen reservierten Wert, der das Ende der Datei anzeigt. Dies ist eine Art verkettete Liste.

    Bei lesenden Zugriffen auf eine Datei muss der Startsektor dieser Datei in der Dateiliste ermittelt werden und darauf folgend im Sektorenabbild des jeweiligen Sektors der Folgesektor ermittelt werden und der Dateiinhalt aus den angegebenen physikalischen Sektoren des Speichermediums geladen bzw. gelesen werden. Die Struktur der FAT muss dabei nicht geändert werden.
    Anders sieht es bei schreibenden Zugriffen aus, wenn die Datei größer oder kleiner wird: Bei größeren Dateien muss der Wert für Dateiende durch einen neuen freien Sektor ersetzt werden und das solange, bis die größere Datei vollständig auf dem Speichermedium untergebracht wurde. Bei kleineren Dateien muss ggf. bereits ein früherer Sektor das Dateiende markieren und alle folgenden Sektoren der ursprünglich größeren Datei müssen mit einem anderen reservierten Wert für "unbenutzt" belegt werden, um diese Sektoren für neue Daten freizugeben. Die neue Sektorverwendung der geänderten Datei muss natürlich auch im FAT-Bereich aktualisiert werden!

    Erst dahinter beginnt der freie Speicher für die abgespeicherten Dateien. Aufgrund der Struktur der FAT müssen die Sektoren einer Datei nicht der physikalischen Reihenfolge auf dem Datenträger entsprechen, sondern die einzelnen Sektoren einer Datei können sich wild über den gesamten Datenträger verteilen. Auf mechanischen Laufwerken (Diskette, HDD-Festplatte) geht damit ein Geschwindigkeitsverlust einher, der durch das notwendige Umpositionieren des Schreib-Lesekopfes verursacht wird. Durch den Vorgang des "Defragmentierens" konnte dies wieder beseitigt werden. Bei FLASH-Laufwerken wie SSD, Speicherkarten oder USB-Sticks führt die fragmentierte Verteilung einer Datei zu keinen Geschwindigkeitseinbußen. Daher ist dieser Eingriff nicht notwendig, sondern eher kontraproduktiv, da er unnütze Schreibzugriffe auf dem FLASH durchführt und zu dessen Alterung beiträgt.

    Von FAT gibt es verschiedene Varianten, die sich darin unterschieden, wieviele Bits für die Abspeicherung der Sektornummer verwendet werden. Da um 1980 Speicher noch ein teures Medium war, schreckte man anfangs nicht davor zurück, den Speicherbedarf der FAT zu komprimieren, indem man die Sektorennummern als 12bit-Wert speicherte, d.h. in 1,5 Bytes. Gelesen wurden immer 2 Bytes und die vier nicht benötigten Bits mussten in einer mehr oder weniger umständlichen Anpassungsberechnung entfernt werden.

    • FAT 12:
      Die Sektoren werden in der FAT als 12bit-Werte gespeichert. Dies kommt nach wie vor auf klassischen 3,5"-Disketten zum Einsatz (sofern ein PC noch mit einem Floppylaufwerk ausgestattet ist)
    • FAT16:
      Größere Festplatten machten dann relativ bald 16bit-Werte für die Sektorennummern in der FAT erforderlich.
      Als die Festplatten immer noch größer wurden, reichten auch 16bit-Werte nicht mehr für die Anzahl der Sektoren aus und es wurde das Konzept der Cluster übergestülpt. Dabei werden 2, 4, 8 oder mehr physikalische 512-Byte-Sektoren zu einem größeren virtuellen Sektor, dem sogenannten Cluster zusammengefasst und das Speichermedium entsprechend gröber unterteilt. Der Nachteil davon ist, dass kleine Dateien mit wenigen Bytes immer den Speicher eines gesamten Clusters benötigen (bis zu 64kB)!
    • FAT32:
      Für noch größere Festplatten wurde schließlich FAT32 eingeführt, bei dem die Sektornummer in einem 32bit-Wert gespeichert wird. Die Clustergrößen auf großen Festplatten konnten wieder deutlich reduziert werden. Der eigentlich limitierende Faktor ist aber heutzutage die maximale Größe einer einzelnen Datei von max. 4GB. Dies wird bei längeren oder hochauflösenden Filmen sowie bei Images für den RPi schnell überschritten!
    • exFAT:
      Dies ist eine moderne Weiterentwicklung von Microsoft, die aber mit den klassischen FAT-Dateisystemen nicht viel mehr als den Namen gemeinsam hat. Laut Microsoft soll es für die Verwendung auf FLASH-Speichern optimiert sein.
      In RPi-Insiderkreisen wird dieses Dateisystem gerne (dr)exFAT genannt, nicht weil es schlecht wäre, sondern weil auf dem Bootmedium für einen RPi die erste Partition vom Typ FAT32 sein muss. Nur die kann der Prozessor des RPi problemlos lesen, nicht jedoch exFAT. Bei der Verwendung von NOOBS mussten die Dateien auf eine SD-Karte kopiert werden, die mit FAT32 (oder FAT16?) formatiert ist. Neuere SD-Karten über 32GB nach dem Standard SD-XC sind jedoch laut Definition der SD-Card-Association mit exFAT formatiert und somit funktioniert auf solchen Karten das NOOBS-Prinzip nicht ohne weitere Eingriffe seitens des Anwenders. Unter Linux kein wirkliches Problem, hier kann eine SD-Karte mit einem beliebigen Dateisystem formatiert werden. Unter Windows ist mit Bordmitteln nur eine Standardformatierung einer SD-XC möglich, d.h. mit exFAT. Deshalb wurde von der RPi-Foundation vor einiger Zeit das NOOBS-Konzept durch das jetzige System mit dem RPi-Installer ersetzt.
    • Dateisystem
    • filesystem
  • Previous entry Distribution
  • Next entry GPT

Registrierung

Don’t have an account yet? Register yourself now and be a part of our community!

Register Yourself

Categories

  1. Hardware 70
  2. Software 88
    1. Smarthome 4
  3. Programmierung 31
    1. Python 9
    2. C · C++ 7
    3. andere Programmiersprachen 3
  4. Betriebssysteme 34
  5. Netzwerk 30
  6. Forenabkürzungen 37

Contributors in this entry

  1. schlizbäda 4 changes
  2. Zentris 1 change
  1. Datenschutzerklärung
  2. Impressum

Forenregeln

Lexicon, developed by www.viecode.com
Powered by WoltLab Suite™