Rechnerarchitektur (Fach) / Speicher - Speicherverwaltung (Lektion)

In dieser Lektion befinden sich 20 Karteikarten

Hauptspeicher, Archivspeicher....

Diese Lektion wurde von fuchsik erstellt.

Lektion lernen

Diese Lektion ist leider nicht zum lernen freigegeben.

  • Ziel virtueller Speicher Abbildung möglichst großen logischen Adressraums auf kleinerem, physikalisch existierendenm SpeicherProbleme: Verwaltung großer Programme in kleinem Hauptspeicher Umsetzung Adressen von Programmen in physisch vorhandene Adressen
  • virtueller Speicher Prozesse verwenden grundsätzlich nur virtuelle Adressen aus eigenem virtuellen Adressraum, wodurch Speicherschutz möglich ist Verwaltung des virtuellen Speichers ist Sache des Betriebssystems >Hardwarearchitektur von modernen Prozessoren unterstützt Betriebssystem
  • virtuelle Adressen Adressen, die von Programmen in CPU benutzt werden entspricht Position im virtuellen Speicher, wird bei Zugriff auf Speicher auf physikalische Adresse abgebildet
  • virtueller Adressraum gesamter Adressraum der CPU
  • reale Adressen Adressen, die den Hauptspeicher adressieren
  • realer Adreßraum Menge der Hauptspeicheradressen
  • Adressumsetzung/-übersetzung/-abbildung Umsetzung von virtuellen in reale Adressen
  • Memory Management Unit (MMU) Hardware für Adressumsetzung
  • Virtuelles Speichersystem Adressumsetzung ist für Programme unsichtbar
  • Relocation minimale Unterstützung, die Betriebssystem von Rechnerarchitektur fordern muss, nur BS kann festlegen, wo Programm zu laden ist Betriebssystem legt dynamisch fest, wo Prozess geladen werden soll• Startadresse > Relocation Register
  • Relocation Probleme Verfahren erlaubt nicht, dass virtueller Speicher größer ist als realer Prozess muss zusammenhängenden realen Adressraum erhalten Adressraumverletzung möglich
  • Paging Virtueller Adressraum wird in Blöcke gleicher Größe eingeteilt > Pages Realer Adressraum wird in Blöcke gleicher Größe eingeteilt> Page Frames Umsetzung virtuelle Adresse in reale Adresse mit Umsetzungstabelle > Page Table Jeder Prozess hat eigene Page Table, adressiert durch > Page Table Register Kontextwechsel bedeutet Umsetzen des PTR.
  • Paging - einstufige Adreßumsetzung Seitentabelle enthält die Abbildung virtueller auf reale Seiten Stellt virtuellen Speicher zur Verfügung Speicherverwaltung durch seitenadressierung
  • Paging:Nachladestrategien Alle Seiten eines Prozesses werden geladen, nicht notwendigerweise konsekutiv
  • Paging:zweistufige Adreßumsetzung doppelte Partitionierung des Hauptspeichers Seiten werden in Gruppen zusammengefaßt Seitentabelle der Seitentabellen: Auflösung der Gruppe Seitentabelle: Auflösung der realen AdresseVorteile: einz. Tabellen werden kleine Seitentabellen können leicht ausgelagert werden mit realen Adressen leere Seitentabellen müssen nicht angelegt werdenNachteil: 3 Speicherzugriffe
  • invertierte Seitentabelle Direct Page Table: für jede Seite des virtuellen Adressbereichs ein Eintrag in Seitentafel > sehr groß Auslagerung von Teilen der Seitentabelle um Platz im Hauptspeicher zu erhaltenLösung Tabelle mit nur einem Eintrag pro realer Seite > invertierte Seitentafel ist auf Anzahl der Rahmen des Hauptspeichers begrenzt> kann dadurch komplett und permanent im Hauptspeicher bleiben selbst für sehr große virtuelle Speicher ist die inv. Seitentafel nicht größer als 4 Byte * (Anz. d. Rahmen im Hauptspeicher)
  • Segmentierung logischer Adressbereich eines Programms wird entsprechend seiner logischen Struktur in Blöcke mit unterschiedlicher Länge (Segmente) zerlegt Unterschied zu Paging: Displacement kann nicht mehr einfach angehangen werden da ein Segment notwendigerweise eine Zweierpotenzen als Anfangsadresse hat Paging nimmt keinei Rücksicht auf Struktur der Programme, was zu gewisser internen Fragmentierung führt > Segmentierung vermeidet dieses Problem etwas schwieriger zu implementieren
  • Segmentierung: externe Fragmentierung obwohl für Prozeß F genügend Platz vorhanden wäre, gibt es keine passende LückeLösung nach Umorganisation des Speichers (Kompaktierung) kann Prozess Fgeladen werden
  • Paged Segmentation Kombination aus Paging und Segmentation:1. Schritt: Segmentierung2. Schritt: Paging Speicher ist in Segmenten organisiert Segmente müssen nicht mehr zusammenhängend sein, sondern unterliegen Paging, > Segmente werden in Seiten unterteilt und seitenweise in Hauptspeicher gebracht Eintrag der Segmenttabelle verweist nun auf eine diesem Segment zugeordnetePage Table die wird mit der virtuellen Seitenadresse indiziert Verwaltung der Zugriffsrechte erfolgt auf Segmentebene
  • Translation Lookaside Buffer Grundlage: temporale Lokalität Idee: „Caching“ der n zuletzt vorgenommenen Adress-Umsetzungen mit TLB ist direkter Zugriff auf physikalische Adressen möglich TLB ist üblicherweise in der MMU enthalten!!!Achtung!!! Speicher TLB wird nicht mit Adresse „adressiert“, sondern mit Inhalt