Wie viele Blocklesevorgänge? Allokationsstrategien

Aufrufe: 428     Aktiv: 12.01.2023 um 09:30

0

Hallo zusammen,

ich bräuchte hilfe bei der Beantwortung folgender Frage:

Nehmen Sie an, ein Prozess öffnet eine Datei und liest dann 5120 Bytes (Blockgröße 512 Byte) ab der Position 100000 (vgl. man fseek). Wieviele Blocklesevorgänge durch das Betriebssystem (die Dateisystemimplementierung) sind jeweils notwendig bei den Strategien contiguous allocation, linked allocation, indexed allocation und der iNode Struktur (siehe Bild), wenn angenommen wird, dass nichts im Hauptspeicher zwischengespeichert wird? enter image description here

(fehlende Information, die aus dem Text nicht hervorgehen, dürfen wir selbst einfach annehmen: Ich gehe für die Antwort davon aus, dass der Zeiger auf dem Startblock gesetzt ist und je Rerefenz 4 Byte benötigt werden und das nichts zwischengespeichert wird.)

Ich habe schon versucht, die Frage zu beantworten. Um es übersichtlich zu lassen, hab ich die Begründung/Rechnung in meiner Antwort hier mal weggelassen. WÜrde mich freuen, wenn jemand vielleicht schauen könnte, ob das so realistisch! Oder mir erklären könnte, wie man aber sonst zu richtigen Antwort kommen kann. DANKE :)

contiguous allocation:

[...]

Also insgesamt 12 Blocklesevorgänge.

linked allocation

[...] also im worst case 209 Blocklesevorgänge., best Case wären wie oben ebenfalls 12 Blocklesevorgänge.

indexed allocation

[..]

11 * 2 +1 = 23 Vorgänge

iNode Struktur

Bei Tripple 11 + 3 + 1 + 4 (je Datenblock) = 19 Zugriffe

Diese Frage melden
gefragt

Student, Punkte: 56

 
Kommentar schreiben
0 Antworten