Gut, nun zunächst die Einführung mit einer kurzen Rekapitulation im zweiten Teil der Einführung
des Stoffkomplexes, den wir bereits in der Systemprogrammierung 1 uns ein wenig angeschaut
haben. Nun, wir wollen uns um die Speicherzuteilungsstrategie innerhalb eines
Betriebssystems kümmern. Die ist besonders wichtig, gerade dann, wenn wir den sogenannten
Mehrprogrammbetrieb fahren wollen im Rechensystem, dann braucht man schon
ausgefeilte Speicherverwaltungsmaßnahmen und eine solche Maßnahme ist eben dann
die Frage, wo findet man überhaupt den freien Speicher? Wir werden eben
verschiedene Formen der Organisation von solchen freien Speicher darstellen.
Wir werden uns auch anschauen, wie die Verwaltungsstrukturen, die ein
Betriebstem benötigt, um freien Speicher zu verwalten,
abgespeichert werden. Und da werden wir dann sehen, dass denn
diese freien Speicher-Bereiche durchaus sozusagen mit gewissen Informationen
sinnvoll gefüllt werden können. Das sind unterschiedliche Sichten. Aus der
Anwendungssicht, wenn man die Maschinenprogramm-Ebene betrachtet,
dann ist freien Speicher einfach nur ein Loch, wo nichts drin liegt. Es kann aber so
sein, dass je nach Art und Weise der Repräsentation und der Abspeicherung
dieser für die Verwaltung des freien Speichers benötigten
Verwaltungsstrukturen aus Betriebssystemen-Sicht eben sehr wohl als
Hohlräume verstanden werden, die auch mit speziellen
Verwaltungsinformationen, Metainformationen, wenn man so will, gefüllt sind.
Da werden wir im Detail drauf eingehen. Wir werden uns die klassischen
Verfahrensweisen anschauen und die auch ein bisschen versuchen zu vergleichen.
Da kann man denn eben sehen, dass diese Verfahrensweisen, die den freien
Speicher, die Löcher, eben entweder der Größe nach verwalten oder der Adresse
nach verwalten. Und da gibt es dann die unterschiedlichen klassischen Verfahren,
wie best fit, worst fit oder body, die fokussieren auf eine Verwaltung und eine
Sortierung von freien Speicherbereichen der Größe nach, wohingegen first fit und
next fit eben die Lokalität dieser Speicherbereiche, dieser freien
Bereiche, Bereiche betrachten. Das heißt, die Adresse, wo diese Löcher sozusagen im
Hauptspeicher liegen, als ein Sortierkriterium in denen halt verwenden.
Bei der Zuteilungsstrategie wird eigentlich immer Speicherverschnitt im
gewissen Maße anfallen. Das hängt auch ein bisschen davon ab, wie die einzelnen
Zuteilungseinheiten denn gestaltet sind. Aber grundsätzlich unterscheidet man
hier bei dem Speicherverschnitt von der sogenannten internen oder externen
Fragmentierung. Der Verschnitt ist die Fragmentierung, wo man denn mal hier schon
mal von vornherein mitnehmen muss, weil es beeinflusst ja auch durchaus die
Verwaltungsstrategien, die wir haben und hilft auch ein Stück weit im
Verständnis der Strategien, dass man erkennen muss, dass bei der internen
Fragmentierung, beim internen Speicherverschnitt, dass der eigentlich,
wenn er auftritt, nicht vermeidbar ist. Der ist naturgegeben und hat eben mit
der Zuteilungseinheit zu tun, die das Betriebssystem verwenden muss.
Wohin gegen die externe Fragmentierung, der externe Speicherverschnitt, durchaus
auflösbar ist. Aber die Verfahren dafür sind durchaus sehr aufwendig teilweise.
Diese Verfahren nennt man dann Verschmelzung und Kompaktifizierung. Da
gehen wir dann auch mal ganz kurz am Ende noch drauf ein, um dann zu zeigen, was
man tun kann, um praktisch Speicherverschnitt eben zu minimieren oder gar
aufzulösen. Nun, in der Systemprogrammierung 1, da haben wir schon mal kurz
einen Blick auf die Speicherverwaltung im groben halt geworfen und da
haben wir eben auch die typischen Aufgaben der Speicherverwaltung schon mal
benannt. Das, was wir jetzt hier betrachten, die Speicherzuteilung dahinter
Presenters
Zugänglich über
Offener Zugang
Dauer
00:07:40 Min
Aufnahmedatum
2021-01-12
Hochgeladen am
2021-01-12 11:08:49
Sprache
de-DE