Hallo!
Kann mir jemand bitte diese Frage beantworten oder mir sagen, wo ich etwas dazu finde?
Warum das Hauptverzeichnis eines Datenträgers nur eine bestimmte Anzahl an Einträgen aufnehmen kann?
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
Weil das mit FAT16 eben so organisiert ist. Mit FAT32 wurde die Begrenzung der Einträge im Rootdirectory aufgehoben, unter NTFS ist es genauso.
Für das Root-Verzeichnis ist ein Bereich fester Länge vorgesehen, während alle anderen Verzeichnisse wie normale Dateien im Datenbereich liegen und dynamisch erweitert werden können. Die Sonderstellung des Root-Verzeichnisses stammt aus den Anfängen von MS-DOS als es nur ein einziges Verzeichnis ohne Unterverzeichnisse gab. Durch die feste Länge des Root-Verzeichnis kann es dann natürlich vorkommen, dass dieses dann irgendwann einfach voll ist. Vom Inhalt der Blöcke her sind das Root-Verzeichnis und alle anderen Verzeichnisse gleich aufgebaut. Die Datenblöcke enthalten 32 Bytes lange Einträge für die im Verzeichnis enthaltenen Dateien und Unterverzeichnisse. Bei FAT16 werden von diesen 32Byte allerdings nicht alle verwendet. Mit FAT32 wurden die Verzeichniseinträge als normale Dateinamen angesprochen, die Sonderstellung mit Begrnezung auf einen bestimmten Bereich der Festplatte wurde damit aufgehoben.
Habe da noch ne Frage, warum reduziert sich die Anzahl der max möglichen Einträge um 1 wenn der Datenträger einen Namen hat? Wird das als Eintrag in den Begrenzten Bereich gewertet?
Ja, der name ist ein normaler verzeichniseintrag, aber mit dem spezialflag für volumename (vergleiche readonly, system, hidden, archive und directory). Erschwerend kommt noch die verwendung von langen dateinamen hinzu, die auch noch jeweils zusätzlich mindestens einen eintrag verbrauchen.
mr.escape