1. Virtueller Speicher:
- Das Betriebssystem unterteilt den physischen Speicher in Seiten und weist jeder Seite eine eindeutige Adresse im virtuellen Speicher zu.
– Wenn ein Prozess Speicher benötigt, weist das Betriebssystem ihm einen virtuellen Adressbereich zu. Wenn nicht genügend physischer Speicher verfügbar ist, verschiebt das Betriebssystem einige Seiten vom physischen in den Festplattenspeicher (bekannt als Paging). ), wodurch Platz für neue Seiten frei wird.
2. Seitenersetzungsalgorithmen:
– Um den Seitenaustausch effektiv zu verwalten, verwendet das Betriebssystem verschiedene Algorithmen. Zu den häufigsten gehören:
- Am wenigsten kürzlich verwendet (LRU): Ersetzt die Seite, die am längsten inaktiv (nicht verwendet) war.
- First In First Out (FIFO): Ersetzt die älteste Seite, unabhängig von der Nutzung.
- Zweite Chance: Variante von FIFO, die Seiten eine „zweite Chance“ gibt, wenn kürzlich darauf verwiesen wurde.
3. Bedarfspaging:
– Das Betriebssystem lädt eine Seite nur dann in den physischen Speicher, wenn sie tatsächlich benötigt wird. Dies reduziert die Speichernutzung und beschleunigt die Ausführung, indem unnötige Seitenladevorgänge vermieden werden.
4. Speicherzuweisungsmethoden:
- Feste Zuordnung: Unterteilt den Speicher in Partitionen fester Größe, die ausschließlich von Prozessen genutzt werden können.
- Variablenzuordnung: Weist basierend auf den spezifischen Anforderungen jedes Prozesses unterschiedliche Speichermengen zu. Dies optimiert die Speichernutzung und verhindert Fragmentierung und Platzverschwendung.
5. Tauschen:
– Wenn der gesamte physische Speicher erschöpft ist und mehr benötigt wird, kann das Betriebssystem ganze Prozesse vom physischen Speicher in den Festplattenspeicher (Swap-Speicherplatz) verschieben ) mithilfe eines Prozesses namens Swapping.
– Ausgelagerte Prozesse werden im physischen Speicher wiederhergestellt, wenn sie erneut ausgeführt werden müssen.
6. Cache-Speicher:
- Die CPU nutzt einen kleinen, schnellen Speicher namens Cache um zuletzt verwendete Daten und Anweisungen für den schnellen Zugriff zu speichern.
- Verschiedene Cache-Ebenen arbeiten nahe an der CPU mit zunehmender Geschwindigkeit und abnehmender Größe.
7. Speicherschutz:
– Das Betriebssystem verwendet Speicherschutztechniken, um zu verhindern, dass Prozesse auf eingeschränkte Speicherbereiche zugreifen oder sich gegenseitig überschreiben.
- Dadurch wird die Datenintegrität gewährleistet und die Sicherheit erhöht.
8. Segmentierung:
– Ein alternativer Ansatz zur Speicherverwaltung, bei dem der Speicher auf der Grundlage logischer Funktionalität und nicht auf der Grundlage von Seiten fester Größe in Segmente unterteilt wird.
9. Buddy-Speicherzuordnung:
– Eine Speicherzuweisungsstrategie, die den Speicher in gleich große Blöcke unterteilt, die je nach Bedarf weiter unterteilt werden können.
10. Seitentabellen und invertierte Seitentabellen:
- Seitentabellen sind Datenstrukturen, die virtuelle Speicheradressen physischen Speicheradressen zuordnen und es dem Betriebssystem ermöglichen, Seitenersetzungen und Speicherzugriffe effizient zu verwalten.
- Invertierte Seitentabellen speichern Zuordnungen zwischen physischen Speicheradressen und virtuellen Speicheradressen und verbessern so die Effizienz von Speicherverwaltungsvorgängen.
Diese Techniken und Algorithmen entwickeln sich ständig weiter, da Computersysteme nach einer verbesserten Effizienz und Leistung der Speicherverwaltung streben.