Home

Speichervorgänge

Speichervorgänge bezeichnet in der Computertechnik alle Operationen, bei denen Daten aus dem Speicher gelesen oder in den Speicher geschrieben werden. Dazu zählen Zugriffe auf verschiedene Speicherebenen wie Register, Cache und Hauptspeicher (RAM) sowie, im weiteren Sinn, sekundärer Speicher wie Festplatten oder Solid-State-Drives. Lesevorgänge liefern dem Prozessor Daten, Schreibvorgänge speichern Daten in den Speicher oder in Puffer.

Der Ablauf eines Speichervorgangs beginnt mit der Adressierung. Virtuelle Adressen werden oft durch die Memory-Management-Einheit (MMU)

Zu den zentralen Eigenschaften gehören die Konsistenz und Reihenfolge von Speichervorgängen, insbesondere in Systemen mit mehreren

Die Leistungswirkung von Speichervorgängen ist bedeutend: Zugriffszeit, Bandbreite und lokale Muster beeinflussen Programm- und Systemleistung stark.

in
physische
Adressen
übersetzt.
Der
Zugriff
erfolgt
über
den
Speicherbus
bzw.
Speicherkontroller.
In
modernen
Systemen
werden
viele
Zugriffe
durch
Cache-Hierarchien
beschleunigt:
Ein
Lesevorgang
kann
aus
dem
Cache
stammen,
ein
Schreibvorgang
kann
in
Cache
oder
Write-Buffer
landen.
Existiert
der
benötigte
Speicherbereich
nicht
im
Cache,
wird
er
aus
dem
Hauptspeicher
oder,
bei
Peripherie,
aus
dem
Speichergerät
nachgeladen.
Prozessoren.
Cache-Kohärenzprotokolle
(etwa
MESI)
sorgen
dafür,
dass
verschiedene
Kerne
konsistente
Kopien
von
Daten
sehen.
Speicherbarrieren
(Memory
Fences)
und
atomare
Operationen
steuern
Synchronisation
und
Reihenfolge.
Neben
volatilem
Hauptspeicher
umfasst
der
Speicher
auch
nicht-volatile
Optionen
wie
Festplatten,
SSDs
oder
spezielle
Persistenzspeicherarten,
die
Daten
auch
nach
Abschalten
des
Systems
erhalten.
Praxisrelevante
Optimierungen
zielen
auf
sequentielle
Zugriffe,
gute
Speicherlokalität,
richtige
Alignment
und
angemessene
Synchronisation,
um
Cache-Hits
zu
erhöhen
und
Write-Back-
bzw.
Write-Through-Verhalten
sinnvoll
zu
nutzen.