Ü 10.1.4 b)

KlausPeter
Windoof-User
Windoof-User
Beiträge: 24
Registriert: 21. Sep 2009 09:40

Ü 10.1.4 b)

Beitrag von KlausPeter »

Hallo, ich sehe mir gerade die Lösung für die 10.1.4 b) an und scheine etwas auf dem Schlauch zu stehen...

Kann mir jemand erklären, weshalb man (im günstigsten Fall) pro Verzeichnis 2 Plattenzugriffe hat?
So wie ich die inode verstehe, kann man ja die ersten 10 Blöcke einer Datei direkt über die inode ansprechen.
D.h., wenn z.B. die Verzweigung zum Verzeichnis gdi3 im usr-Verzeichnis in einem der ersten 10 Blöcke enthalten ist,
müsste ich doch, sobald ich die inode vom usr-Verzeichnis im HS habe, direkt die inode von gdi3 in den HS holen können,
ohne vorher noch das usr-Verzeichnis anzuschauen.
Mit der Rechnung würde ich allerdings auf nur 5 statt 10 Plattenzugriffe kommen. :?

Gruß KlausPeter

Benutzeravatar
Patr0rc
Sonntagsinformatiker
Sonntagsinformatiker
Beiträge: 260
Registriert: 8. Feb 2008 11:43

Re: Ü 10.1.4 b)

Beitrag von Patr0rc »

Du musst dir erst die i-Node holen um zu sehen, wo das "Verzeichnis" (die Datei) /usr liegt. Wenn du die i-Node von /usr hast, kannst du darin erkennen, in welchem Plattenblock /usr ist und diese Plattenblock laden. Deshalb lädt man erst die i-Node und danach die Datei.
Ok?

KlausPeter
Windoof-User
Windoof-User
Beiträge: 24
Registriert: 21. Sep 2009 09:40

Re: Ü 10.1.4 b)

Beitrag von KlausPeter »

Ah ok, ich hatte es irgendwie so verstanden, dass "direkt gespeicherte Blöcke" heißen soll, dass die ersten zehn Blöcke MIT der inode in den HS wandern
und man für diese zehn Blöcke sozusagen gar nicht mehr auf die Platte zugreifen muss (was zugegebenermaßen ein ziemlich großer Aufwand wäre)...

Also verweisen die ersten zehn Einträge nur direkt auf Plattenblöcke, die man selbst dann schon nochmal von der Platte auf den HS holen muss.
Wenn dem so ist, dann hab ich's jetzt verstanden :idea: Danke sehr!

cdn
Mausschubser
Mausschubser
Beiträge: 55
Registriert: 13. Dez 2008 13:54

Re: Ü 10.1.4 b)

Beitrag von cdn »

ich hänge mich mal mit meinen Fragen zu dieser Aufgabe an:
die Lösung zu der Aufgabe ist für mich absolut nicht zufriedenstellend. Es tauchen hier 2 Ungereimtheiten für mich auf:
1. Warum muss ich nicht mindestens einen Datenblock des Verzeichnisses / lesen? Lt. Aufgabenblatt liegt ja nur der i-node dazu im Speicher, nicht zwangsläufig der Datenblock indem die Verzeichnisinformationen stehen.
2. Die Anzahl der Zugriffe ist doch sicher dann minimal, wenn klausur.tex schon durch einen anderen Prozess gelesen wird und dadurch der inode schon im Speicher liegt. Dann bräuchte ich nur genau die Zugriffe auf die Daten selbst.

Benutzeravatar
Patr0rc
Sonntagsinformatiker
Sonntagsinformatiker
Beiträge: 260
Registriert: 8. Feb 2008 11:43

Re: Ü 10.1.4 b)

Beitrag von Patr0rc »

cdn hat geschrieben:1. Warum muss ich nicht mindestens einen Datenblock des Verzeichnisses / lesen? Lt. Aufgabenblatt liegt ja nur der i-node dazu im Speicher, nicht zwangsläufig der Datenblock indem die Verzeichnisinformationen stehen.
Das ist eine gute Frage. Irgendwie habe ich implizit angenommen, dass sich der Verzeichniseintrag von "/" schon im Speicher befindet. Wenn es nur die i-Node ist, müsste man eigentlich noch den Verzeichniseintrag von "/" lesen.
cdn hat geschrieben:2. Die Anzahl der Zugriffe ist doch sicher dann minimal, wenn klausur.tex schon durch einen anderen Prozess gelesen wird und dadurch der inode schon im Speicher liegt. Dann bräuchte ich nur genau die Zugriffe auf die Daten selbst.
Das ist natürlich richtig. Aber dann ist die Aufgabe ja nicht unbedingt sinnvoll, denn man bräuchte keine Plattenzugriffe mehr zwischendurch (um die es hier offensichtlicherweise vorrangig gehen soll).

Antworten

Zurück zu „Archiv“