2009-07-17 4 views
1

Wie recherchiert der Computer einen bestimmten Eintrag in der MFT-Tabelle für eine Datei oder ein Verzeichnis? Ich lese durch viele Dokumente, die die Struktur von NTFS und MFT beschreiben, aber ich verstehe nicht sagen, ich habe eine Datei in E: \ Dokumente \ test.txt, wie kann ich seinen Eintrag im MFT-Index identifizieren. Ist es sequenziell?Wie erfolgt die Indizierung auf einem NTFS-Laufwerk?

Antwort

0

Ich habe eine readonly NTFS-Bibliothek (UMFS) in der fernen Vergangenheit implementiert.

Das Stammverzeichnis eines Volumes wird immer im MFT-Datensatz 5 gespeichert. Sobald Sie den Datenstrom für das Verzeichnis lesen können, können Sie den im Stream gespeicherten b + -Baum (wie @Christopher) im Unterverzeichnis suchen oder Datei, an der Sie interessiert sind.

0

NTFS verwendet B + Bäume intern für die Dateiindizes. Ein B + -Baum ist ein Binärbaum. Diese article ist so gut eine Erklärung wie jeder w/r, wie B + Bäume arbeiten.

+0

danke, also, wenn ich über die Implementierung der Enumeration aller Dateien und Verzeichnisse in einem Ordner gehe, gibt es keinen Platz, an dem ich anfangen kann? Ich werde alle Einträge durchlaufen müssen? Wie in FAT32, wo es einen Eintrag für Root gibt, gibt es keinen solchen Eintrag in MFT –

+0

NTFS verwendet B-Bäume, nicht B + Bäume. FYI. – jrtipton

Verwandte Themen