TGI 7 Cache and Co Flashcards
Virtueller Speicher ist unabhängig vom
physikalisch vorhandenen Arbeitsspeicher
Paging ist …. für Programmierer
Paging ist transparent für Programmierer (muss keine
Rücksicht nehmen, ob Adressen im real vorhandenen
physikalischen Arbeitsspeicher wirklich existieren)
Virtuelle Adresse Vs Physische Adressen
Virtuelle Adressen bieten Flexibilität und Schutz, während physische Adressen den direkten Zugriff auf den physischen Speicher ermöglichen.
Where Logical Address Space are implemented?
On Hard Disk, in RAM
Paging ist
Paging hilft dem Computerprogramm, mit mehr Daten zu arbeiten, indem es den Speicher clever organisiert.
Vorteile und Nachteile von Paging
Vorteile:
Ermöglicht die Ausführung von Programmen, die größer sind als der physische Speicher.
Speicherschutz: Verhindert den Zugriff von Prozessen auf fremden Speicher.
Vereinfachte Speicherverwaltung: einfache Speicherverwaltung durch Einteilung in Blöcke.
Flexible Speicherzuweisung: Dynamische Zuweisung und Freigabe von Speicherplatz.
Nachteile:
Overhead: Zusätzlicher Verarbeitungsaufwand für die Adressübersetzung.
Externe Fragmentierung: Ungenutzter Speicherplatz innerhalb einer Seite.
Demanding paging
werden nur die virtuellen Seiten, die Ihr Programm gerade verwendet laden, in den physischen Speicher (RAM).
Dirty bit
Das Dirty Bit zeigt an, welche virtuellen Seiten im Speicher (RAM) geändert wurden, seit sie das letzte Mal von der Festplatte geladen wurden.
Page fault
Page wird gebraucht, wurde aber ausgelagert
Was passiert wenn physikalischer Speicher voll ist?
Wenn physikalischer Speicher voll ist, muss vor dem
Einlagern einer angeforderten Page (Page-In) eine andere
Page ausgelagert (Page-out) werden.
Trashing ist
System ist (fast) nur mit Einlagerung und Auslagerung beschäftigt und kann kaum (gar nicht) Programm abarbeiten
Welche Pages werden ausgelagert?
Diejenige, die möglichst lange nicht mehr gebraucht wird
Was ist CPU-Designziel?
in jedem Takt Befehl abarbeiten
Speicher-Latenzzeit ist
Wartezeit, bis Speicherzugriff anläuft
Caches sind
kleine, schnelle Zwischenspeicher
Räumliche Lokalität
Häufig Zugriffe auf Adressen, die in der Nähe kürzlich benutzter Adressen liegen
Zeitliche Lokalität
Folgezugriffe auf kürzliche benutzte
Adressen
Welche Daten kann lange im Cache halten?
Kürzlich benutzte Daten möglichst lange im Cache
halten
Was ist Cache-Hit?
findet was er sucht
Cache-Miss
findet nicht
Hit-Rate
Wahrscheinlichkeit für Cache Hit
Lesezugriff auf Hauptspeicher:
Cache auf Kopie prüfen
Was ist Datum?
eine kleine Datenmenge im Cache
Look-Through-Cache.
Zwischen.. und …?
Cache und Hauptspeicher?
Bei guter Hit-Rate?
Bei schlechter Hit-Rate?
Zwischen CPU und Hauptspeicher
Schnell an CPU angebunden (höherer Bustakt als
Hauptspeicher)
Cache und Hauptspeicher nicht gleichzeitig aktivierbar
(Hauptspeicherzugriff erfolgt erst, wenn Daten im Cache
nicht gefunden wurden)
Bei guter Hit-Rate fast nur Zugriffszeit des Caches
entscheidend
Bei schlechter Hit-Rate hohe Wartezeiten