5 Speicher(-verwaltung) Flashcards
(6 cards)
Swapping
Swapping (austauschen) bedeutet:
Daten zwischen Hauptspeicher (schnell, klein) und Hintergrundspeicher (langsam, groß, z. B. Festplatte) hin- und herzuschieben
Wie wurde früher Speicher verwaltet und warum brauchte man später neue Lösungen?
Früher mussten Programm und Daten immer an der gleichen Stelle im Speicher liegen (feste Speicherbereiche, „Partitionen“).
Mit moderneren Betriebssystemen (mehr Programme, Bibliotheken, Treiber…) war das nicht mehr möglich.
Lösungen:
Verschiebbarer Code
Trennung von logischen und physischen Adressen
Was ist eine Logische Adresse
Als logische Adresse bezeichnet man eine Adresse, die
ein Prozess verwendet
Was ist eine physische Adresse
Als physische Adresse bezeichnet man eine Adresse, an
der tatsächlich ein Byte gespeichert werden kann.
Zwischen beiden Adressen muss ggf. umgerechnet
werden, per Soft- oder Hardware.
Welche Maßnahmen sind bei mehreren aktiven Programmen zur Speicherverwaltung nötig?
. Speicherverwaltung:
Sicherheit: Zugriffe prüfen und unzulässige verhindern
Buchhaltung: Überblick über belegte und freie Speicherbereiche
Speichervergabe: Speicher an Prozesse zuteilen oder zurücknehmen
- Speichermanagement:
Passende Speichergröße bereitstellen
Daten zwischen Haupt- und Sekundärspeicher verschieben
Lösungen:
Swapping (Auslagern ganzer Prozesse)
Virtueller Speicher (Vergrößerung durch Auslagerung einzelner Speicherbereiche)
Was ist Paging und welche Eigenschaften hat es?
Paging = Speicherverwaltung, bei der der logische Speicher eines Prozesses in kleine, verteilte physische Einheiten (Seiten/Kacheln) aufgeteilt wird. Der Programmierer merkt davon nichts.
Eigenschaften:
Keine externe Fragmentierung, aber interne Fragmentierung am Ende möglich
Jeder Prozess hat eine eigene Seitentabelle, vom Betriebssystem verwaltet
Gemeinsamer Speicher über gemeinsame Seiten möglich
Speicherschutz durch Schutzbits (z. B. gültig/ungültig, verändert/unverändert)