Gibt es eine minimale FAT Datenspeichergrösse?

OP (Firma: embedded projects GmbH) #619804
Lesenswert?
• ▲
▼
Hallo,

kennt jemand eine mind. Grösse für ein FAT Dateisystem?

1. Weiss jemand was Windows mit FAT meint (also wenn ich formatieren 
will) (FAT12, FAT16, FAT32, VFAT??)

2. Ich will ein 4 K Massenspeicher mit diesem "unbekannten Windows FAT" 
realisieren. Ist das vielleicht zu wenig?


Gruss Bene
Persönliche Seite #619815
Lesenswert?
• ▲
▼
Die kleinsten real existierenden FAT-Dateisysteme gab es auf einseitigen 
5.25"-Disketten mit 40 Spuren. Die hatten dann eine Kapazität von etwa 
180 kByte.

4 K dürfte zu wenig sein, das wären ja nur 8 Sektoren, einer geht für 
den Bootsektor drauf, zwei werden für die FAT und deren Kopie benötigt, 
mindestens einer geht fürs Root-Directory drauf ... bleiben noch 
sagenhafte 4 Sektoren für Nutzdaten. Wow.

Windows verwendet FAT12 nur auf extrem kleinen Datenträgern (< 32 
MByte), FAT16 bis 2 oder 4 GByte (letzteres geht dank 64 KB-Clustern, 
wird aber nicht von jedem System unterstützt) und FAT32 bei allem, was 
größer ist oder aber mehr als 64K Cluster erfordert.
Durch die Angabe der Clustergröße lässt sich in Grenzfällen beim 
Formatieren beeinflussen, welche FAT-Variante verwendet wird (FAT16 oder 
FAT32).

VFAT wird auf allen FAT-Varianten verwendet, das bezeichnet nur die 
Technik der Speicherung der "langen Dateinamen" in mehreren 
Directoryeinträgen.
Persönliche Seite #619830
Lesenswert?
• ▲
▼
Das ist nicht auszuschließen.

Ob aktuelle Windows-Versionen überhaupt noch mit den steinzeitlichen 
FAT12-Formaten klarkommen, entzieht sich meiner Kenntnis. Zumindest 
normale Disketten funktionieren noch.

Allerdings habe ich noch nie ein USB-5.25"-Diskettenlaufwerk gesehen, 
daher weiß ich nicht, ob die USB-Massenspeichergeräteklasse so etwas 
definiert bzw. wo deren reale Limits liegen.
#619840
Lesenswert?
• ▲
▼
Natürlich unter Linux ;-)
1
mkfs.vfat -f1 -F12 -s1 -S512 -v -r 16 -C bla.img 128
2

3
mkfs.vfat 2.11 (12 Mar 2005)
4
bla.img has 64 heads and 32 sectors per track,
5
logical sector size is 512,
6
using 0xf8 media descriptor, with 256 sectors;
7
file system has 1 12-bit FAT and 1 sector per cluster.
8
FAT size is 1 sector, and provides 253 clusters.
9
Root directory contains 16 slots.
10
Volume ID is 46b186f7, no volume label.
11

12
df sagt:
13
Dateisystem           1K-Blöcke   Benutzt Verfügbar Ben% Eingehängt auf
14
/home/thomas/bla.img       127         0       127   0% /home/thomas/tmp

128kb FAT12-Image mit 127 freien 1k-Blöcken

Mfg
Thomas Pototschnig
Gast #619864
Lesenswert?
• ▲
▼
Was willst du damit erreichen, ein FAT-Dateisystem im SRAM zu haben?
Evtl. könntest du die Daten ohne Dateisystem speichern und FAT "on the 
fly" simulieren.

> Wisst Ihr wie ich mit Windows eine FAT12 Formatierung erzwingen
> koennte? Komme aus dem Linux Lager und hab daher kaum Ahnung bei
> Windows mit sowas.

Warum willst du es dann unter Windows machen?
Gast #619978
Lesenswert?
• ▲
▼
Ok.
und jetzt kommen die realen Bestimmungen für FAT
minimales Dateisystem:
Du benötigst auf jeden Fall einen Bootsektor 512 Byte mit den Werten des 
FAT Dateisystems
Du brauchst 1 Sektor für das Hauptverzeichnis (512 BYte)
Da jeder Dateieintrag 32 Byte hat, kann dein Hauptverzeichnis max 16 
Einträge haben.
Du kannst angeben, daß du nur eine FAT hast. Bei deiner 4K Größe reicht 
also für die FAT ein Sektor
der Rest ist Datenspeicherbereich , also bei deinen 4K hättest du 
4K-1,5K=2,5K zum Daten speichern. Das sind max. 5 Dateien a 512 Byte, da 
jeweils der gesamte Cluster genutzt werden muß.(angenommene Clustergröße 
512 Byte)
FAT 12 mußt du in jedem Fall verwenden, da die Clusteranzahl (5) <4089 
ist und nach Dokumenten von Microsoft die Clusteranzahl entscheidet ob 
das Dateisystem als FAT12/16/32 erkannt wird.

Literatur:
PCIntern 3.0
Microsoftdokument zu FAT ist auch hier im Forum verlinkt

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.