Dann begrüße ich Sie ganz herzlich zum zweiten Teil unserer Vorlesung über das Thema Speicherverwaltung.
Heute geht es um Zuteilungsverfahren, also Speicherverwaltung sowohl im Betriebssystem selbst als auch ein Thema,
das Sie von der Übungsaufgabe aus der Systemprogramme 1, der Haldeaufgabe, schon kennen.
Wie macht man denn überhaupt feingranulare Speicherverwaltung?
Wie verwaltet man freien Speicher? Wie gibt man belegten Speicher raus? Und ähnliches.
Das wird also hier im Wesentlichen heute das Thema dieser Vorlesung sein.
Ich werde erstmal eine kurze Einführung geben und noch einen kleinen Rückblick auf einige Aspekte, die wir in der Systemprogrammierung 1 schon betrachtet haben.
Und dann geht es im weiteren Verlauf um Platzierungsstrategien, Freispeicherorganisationen und dann vor allem Verfahrensweisen,
wie man freien Speicher bei Speicheranforderungen herausgibt.
Im weiteren Abschnitt geht es dann um den Umgang mit Speicherverschnitt.
Wenn also Speicher freigegeben wird, belegt wird, freigegeben wird, entsteht so im Laufe der Zeit möglicherweise eine Fragmentierung,
wie man damit umgeht, wie man freien Speicher bei der Freigabe auch wieder verschmilzt.
Ein Thema, das wir damals in der Haldeaufgabe explizit ausgelassen haben, um die Aufgabe nicht zu kompliziert zu machen.
Ein weiteres Thema in dem Zusammenhang ist auch noch Kompaktifizierung,
wenn man zu viele freie Speicherbereiche hat im Hauptspeicher, aber die sind alle klein und verstreut.
Wie kann man das Ganze zusammenfassen, indem man auch Speicherbereiche verschiebt?
Das sind so also im Wesentlichen die Themen heute.
Es geht im Wesentlichen eigentlich um vier große Themengebiete.
Es geht also einmal um die Grundlagen der Speicherzuteilungsstrategie im Betriebssystem generell,
insbesondere im Hinblick auf Mehrprogrammbetrieb, also wenn man Speicher für mehrere Programme verwalten muss
und wie man das im Einzelnen dann tun kann.
Dann wollen wir betrachten klassische Verfahrensweisen bei der Verwaltung von freiem Speicher
und die sich daraus ergebenden Aspekte von Zuteilungsstrategien.
Und dann, wie gerade schon erwähnt, möchte ich Speicherverschnitt betrachten.
Im Wesentlichen geht es hier um zwei sehr grundlegende unterschiedliche Arten von Speicherverschnitt.
Das eine ist interner Verschnitt.
Das ist letztendlich der Verschnitt, der auftritt, wenn man ein Stück Speicher anfordert,
man vom System aber größeren Speicher bekommt, aus welchen Gründen auch immer.
Und der Verschnitt, der eben dadurch auftritt, dass man einfach mehr Speicher bekommen hat,
wie man angefordert hat und den man in diesem Fall dann ja nicht braucht,
wie man damit eben umgeht bzw. man kann da gar nicht weiter umgehen, den hat man einfach, der ist dann auch unvermeidbar.
Und externer Verschnitt, das ist eben der Verschnitt, der zwischen belegten Speicherbereichen liegt,
aber möglicherweise zu klein ist, um noch vernünftig nutzbar zu sein, wie man solche Sachen auflösen kann.
Und in diesem Zusammenhang geht es dann vor allem um Themen wie Verschmelzung und Kompaktifizierung,
um diesen Speicherverschnitt zu minimieren.
So, Speicherverwaltung ist so eine der ganz zentralen Aufgaben eines Betriebssystems.
Und im Wesentlichen geht es halt zum einen darum, eben den freien Speicher insgesamt zu verwalten
und dann Speicher an Prozesse zuzuteilen, darüber Buch zu führen,
die Größe eines Prozesses eben entsprechend so auszulegen, dass er eben den Speicher,
der benötigt, eben auch zur Verfügung hat.
Und in dem Zusammenhang ist eine Aufgabe sehr wichtig, das ist die Platzierungsstrategie,
einfach die Fragestellung, wo im Hauptspeicher habe ich den Platz, den dieser Prozess braucht.
Das Ganze kann erweitert sein dann um Speichervirtualisierung,
das werden wir auch in der nächsten Vorlesung, im Abschnitt 3, uns dann nochmal genauer betrachten.
In diesem Zusammenhang, da kann man sich dann eben überlegen, wo kann ich dann eben auch,
obwohl der Hauptspeicher eigentlich zu knapp dafür ist, um das eine Programm oder auch mehrere Programme gleichzeitig um Speicher zu halten,
wie kann ich den verfügbaren Speicher dann trotzdem maximieren.
In dem Zusammenhang sind dann zwei Strategien wichtig, das eine ist die Ladestrategie,
das ist die Fragestellung, wann lade ich ein Datum in den Hauptspeicher,
und das zweite ist dann die Ersetzungsstrategie, für den Fall, dass kein Platz zur Verfügung steht,
Presenters
Zugänglich über
Offener Zugang
Dauer
01:06:27 Min
Aufnahmedatum
2018-01-18
Hochgeladen am
2018-03-24 15:56:56
Sprache
de-DE