Durchlaufen des Inodes, um den Inhalt der in verschiedenen Datenblöcken gespeicherten Datei zu finden
420
Angus
Ich lese über das EXT2-Dateisystem und habe ein Verständnis davon. Jedes Dateisystem besteht aus Daten und Metadaten (Inode). Das Dateisystem ist in mehrere Blöcke mit 4 Hauptblöcken unterteilt, die Informationen über andere Blöcke enthalten.
Wie geschieht die Interaktion, wenn wir versuchen, eine Datei aus dem Benutzerbereich zu öffnen?
Wenn der Benutzer den open()
Syscall anruft, wie befindet sich die Datei über die Inode-Nummer und wie werden die Inhalte im nächsten Block gespeichert?
open()
ruft sys_open()
die do_path_search()
Funktion auf, indem sie nach der Inode-Nummer mit dem Dateinamen sucht. Sie erhält die Inode-Nummer, die die Adresse der Datenblöcke enthält, indem sie die Tabelle der Inode-Nummern betrachtet.
- Wie sucht es den verbleibenden zusammenhängenden Block?
- Wie erkennt es, welches Dateisystem durchsucht werden muss, um die richtige Datei zu erhalten?
- Wie wird die Dateistruktur von mehreren Prozessen verwaltet, die auf dieselbe Datei zugreifen?
Dies sind eine Menge Fragen. Wie wäre es, wenn Sie über jedes einzeln nachdenken und es separat fragen.
Rory Alsop vor 10 Jahren
1
Ich habe die Frage gekürzt
Angus vor 10 Jahren
0
0 Antworten auf die Frage
Verwandte Probleme
-
1
Booten nach Ubuntu nicht möglich. Inkonsistenz in der Festplatte, X-Server konnte nicht gestartet we...
-
1
Wie kann ich feststellen, wie viele Inodes ein Verzeichnis verwendet?
-
2
Ist es möglich, alle Dateien mit einem bestimmten Inode zu finden? Effizient?
-
2
Problem beim Anzeigen des Superblocks im ext3-Dateisystem
-
2
So berechnen Sie die richtige Menge an Inode- / Blockgrößen für ein Linux-Dateisystem
-
6
Entfernen Sie eine Datei unter Linux mit der Inode-Nummer
-
1
Auswirkungen auf den Inode während der Größenänderung des LV
-
2
Inode-Block-Verhältnis
-
3
Greifen Sie auf die Datei über ihre ID zu und ändern Sie die Dateiattribute
-
3
tail -f verfolgt keine Dateiänderungen