Ich möchte die gesamte externe und interne Fragmentierung ermitteln. Ich verstehe, dass externe Fragmentierung auftritt, wenn Prozesse geladen und aus dem Speicher entfernt werden, wodurch der Speicher in kleine Teile zerlegt wird, und dass interne Fragmentierung der nicht verwendete Speicher innerhalb einer Partition ist.
Angenommen, ich hatte die folgenden Speicherlücken: 50 KB, 400 KB, 130 KB, 300 KB, 150 KB und 70 KB (in dieser Reihenfolge). Jetzt habe ich die folgenden Prozesse, die den folgenden Speicherplatz benötigen (in der Reihenfolge): A = 230 KB, B = 180 KB, C = 130 KB, D = 120 KB, E = 200 KB.
Mit der First Fit -Methode habe ich die folgende Zuordnung ermittelt:
50 KB Loch sind 0 Prozesse zugeordnet -> 50 KB frei
400 KB Loch sind Prozesse A und C zugeordnet -> 40 KB frei
130 KB Loch ist Prozess D zugeordnet -> 10 KB frei
300 KB Loch ist Prozess B zugeordnet -> 120 KB frei
150 KB Loch ist 0 Prozesse zugeordnet -> 150 KB frei
70 KB Loch ist 0 Prozesse zugeordnet -> 70 KB frei
Basierend auf meinem Verständnis der Definitionen:
Interne Gesamtfragmentierung = 50 KB + 150 KB + 70 KB = 270 KB
Externe Gesamtfragmentierung = 40 KB + 10 KB + 120 KB = 170 KB
Ist das richtig? Vielen Dank.
Kommentare
- Wir raten von " ab. Bitte überprüfen Sie, ob meine Antwort korrekt ist. " Fragen, da nur " ja / nein " Antworten möglich sind, die ' hilft Ihnen oder zukünftigen Besuchern nicht. Siehe hier und hier . Können Sie Ihren Beitrag bearbeiten, um nach einem bestimmten konzeptionellen Problem zu fragen, bei dem Sie ' unsicher sind? Als Faustregel gilt, dass eine gute konzeptionelle Frage auch für jemanden nützlich sein sollte, der sich nicht ' mit dem Problem befasst, an dem Sie gerade arbeiten. Wenn Sie nur jemanden brauchen, der Ihre Arbeit überprüft, suchen Sie möglicherweise einen Freund, Klassenkameraden oder Lehrer.
- Ja, das konzeptionelle Problem besteht darin, die gesamte externe und interne Fragmentierung zu finden. Es ist ' der Titel der Frage. Ich habe ein Beispiel angegeben, um meine eigene Frage zu beantworten.
- Was misst " die Fragmentierung " tatsächlich? ? Ich ' weiß nicht einmal, welche Einheiten geeignet sind, um eine Menge mit diesem Namen zu beschreiben – aber es scheint sehr unwahrscheinlich, dass es sich einfach um eine Anzahl von Bytes gebildet durch Summieren der Größe jedes Fragments, einfach weil dann " die Fragmentierung " eines einzelnen Lochs mit einer Größe von 270 KB gleich wäre als " die Fragmentierung " von 270 Löchern mit einer Größe von jeweils 1 KB, wenn eindeutig ein bedeutendes Maß dem letzteren eine größere Zahl zuweisen würde.
Antwort
Je nach Problem wird Prozess A 400 KB Speicher zugewiesen, sodass der Speicher aufgeteilt wird In zwei Teile ist einer zur Erfüllung der Anforderung und der verbleibende (170 KB) die Art der externen Fragmentierung, die mit (170 KB E) bezeichnet wird.
Ähnlich für Prozess B unter Verwendung von 300 KB, der 120 KB E ergibt.
Ähnlich für Prozess c unter Verwendung von (170 KB E) Ergebnissen (40 KB E).
Ähnlich für Prozess D us (130 KB) Ergebnisse (10 KB E) Anforderung von Prozess E kann „nicht abgeschlossen werden Also totale externe Fragmentierung = 40 + 10 + 120 = 170 KB
Interne Gesamtfragmentierung = 50 + 150 + 70 = 270 KB
Antwort
NEIN! Die gesamte interne Fragmentierung beträgt 40 + 10 + 120 = 170 kB und die gesamte externe Fragmentierung 50 +150 + 70 = 270 kB.
Antwort
Zunächst müssen Sie angeben, ob Ihre Partitionen eine feste oder eine variable Größe haben. Wenn sie eine dynamische Partitionierung (variable Größe) verwenden, ist die interne Fragmentierung immer 0, da sie nur für die Partitionierung mit fester Größe definiert ist. Angenommen, Ihre Partitionierung ist statisch, ist die gesamte interne Fragmentierung die Summe aller internen Fragmentierungen. Und für die externe Fragmentierung entspricht dies dem gesamten verfügbaren freien Speicher (Löcher plus zusammenhängender freier Speicher). Daher beträgt die externe Fragmentierung hier (50 + 40 + 10 + 120 + 150 + 70) KB = der insgesamt verfügbare freie Speicher = der gesamte nicht verwendete Speicher. Während die interne Fragmentierung (40 + 10 + 120) KB beträgt, werden die nicht verwendeten Partitionen nicht gezählt, da sie keinem Prozess zugeordnet sind. Die externe Fragmentierung ist eine Obermenge der internen Fragmentierung im Fall einer Partitionierung mit fester Größe.