„Speicherseite“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
[gesichtete Version][ungesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
Die letzte Textänderung von 213.55.184.234 wurde verworfen und die Version 161851112 von TheRandomIP wiederhergestellt.
ChangeF (Diskussion | Beiträge)
Seite neu strukturiert und Belege für die Aussagen eingefügt. Dinge gestrichen, die eher zur MMU oder zur Seitentabelle gehören.
Zeile 1: Zeile 1:
{{Belege fehlen|2=Der gesamte Artikel}}
{{Belege fehlen|2=Der gesamte Artikel}}


Eine '''Speicherseite''' ({{enS|page}}, im [[Deutsche Sprache|Deutschen]] auch ''Kachel'' genannt) ist in der [[Informatik]] eine durch die [[Rechnerarchitektur]] und das [[Betriebssystem]] festgelegte Anzahl von direkt aufeinanderfolgenden Speicherstellen im logischen Speicherraum. Der [[Arbeitsspeicher]] wird in gleich große Speicherseiten unterteilt.
Eine '''Speicherseite''' oder ''Seite'' ({{enS|page}}) ist in der [[Informatik]] eine durch die [[Rechnerarchitektur]] und das [[Betriebssystem]] festgelegte Anzahl von direkt aufeinanderfolgenden Speicherstellen in der Organisation des [[Virtuelle Speicherverwaltung|virtuellen Speichers]]. Aktuelle Speicherseiten sind von konstanter Größe und umfassen typischerweise 4 KiB. <ref>{{Literatur |Autor=Andrew S. Tanebaum, Herbert Bos |Titel=MODERN OPERATING SYSTEMS |Auflage=4 |Verlag=Pearson |Datum=2015 |ISBN=978-0-13-359162-0}}</ref><ref name=":0">{{Literatur |Autor=Christian Baun |Titel=Operating Systems / Betriebssysteme |Verlag=Springer Vieweg |Ort=Wiesbaden |Datum=2020 |ISBN=978-3-658-29785-5}}</ref><ref name=":1">{{Literatur |Autor=Peter Mandl |Titel=Grundkurs Betriebssysteme |Auflage=5 |Verlag=Springer Vieweg |Ort=Wiesbaden |Datum=2020 |ISBN=978-3-658-30547-5}}</ref>


In aktuellen Betriebssystemen greifen die meisten Benutzerprozesse nicht direkt auf physische Adressen des [[Arbeitsspeicher|Hauptspeichers]] zu, sondern im Rahmen des ''Schutzmodus'' (protected mode) lediglich über logische Speicheradressen auf Speicherseiten in einem virtuellen Speicher. Dabei wird jedem Prozess eine eigenene ''[[Seitentabelle]]'' zugeordnet, in welcher hinterlegt ist, wo sich die einzelnen Seiten des Prozesses befinden. Anhand der Seitentabelle kann der Hauptprozessor mit Hilfe der [[Memory Management Unit]] (MMU) eine genaue Zuordnung zwischen der virtuellen und der physischen Speicheradresse vornehmen. <ref name=":0" /><ref name=":1" /> Dabei muss nicht jede physische Speicheradresse tatsächlich im Hauptspeicher sein, da durch ''[[Swapping]]'' derzeit nicht benötigte Speicherteile auf Schattenspeicher (''paging area'') der Festplatte ausgelafert werden können.
Durch die Verwendung von ''Speicherseiten'' ist es dem [[Betriebssystem]] möglich, eine [[virtuelle Speicherverwaltung]] durchzuführen.
Der gesamte Arbeitsspeicher wird in ''Kacheln'' aufgeteilt und jede Adresse wird in dieser Rechnerarchitektur durch die [[Memory Management Unit]] (MMU) als logische Adresse interpretiert und in eine physische Adresse umgewandelt.
In der MMU ist im Allgemeinen ein sogenannter Deskriptor-Cache ([[Translation Lookaside Buffer]]), in dem auf Hardware-Basis die letzten Seiten-Adressen und die zugehörigen Kachel-Adressen zwischengespeichert werden und somit der Zugriff auf den physischen Speicher (Arbeitsspeicher) beschleunigt werden kann. Liegt nämlich zu einer aktuellen logischen Adresse die Seitennummer nicht im Deskriptor-Cache vor, muss die MMU auf die im Arbeitsspeicher liegende [[Seitentabelle]] zugreifen.


Sprachlich wird dabei zwischen den ''Seiten (pages)'' im virtuellen Adressraum und den ''Seitenrahmen'' oder ''Kachel (page frames)'' im realen Adressraum unterschieden. <ref name=":1" />
Ein Teil der logischen Adresse gibt dabei über die Seitenadresse die im Arbeitsspeicher zu verwendende ''Kachel'' an, während der andere Teil die relative Adresse, den [[Speicheradresse#Segmentierte Adressen|Offset]], innerhalb der ''Kachel'' adressiert. Damit gibt der Offset die Größe einer ''Kachel'' vor.


== Beispiel ==
== Beispiel ==

Version vom 4. Juni 2021, 20:23 Uhr

Eine Speicherseite oder Seite (englisch page) ist in der Informatik eine durch die Rechnerarchitektur und das Betriebssystem festgelegte Anzahl von direkt aufeinanderfolgenden Speicherstellen in der Organisation des virtuellen Speichers. Aktuelle Speicherseiten sind von konstanter Größe und umfassen typischerweise 4 KiB. [1][2][3]

In aktuellen Betriebssystemen greifen die meisten Benutzerprozesse nicht direkt auf physische Adressen des Hauptspeichers zu, sondern im Rahmen des Schutzmodus (protected mode) lediglich über logische Speicheradressen auf Speicherseiten in einem virtuellen Speicher. Dabei wird jedem Prozess eine eigenene Seitentabelle zugeordnet, in welcher hinterlegt ist, wo sich die einzelnen Seiten des Prozesses befinden. Anhand der Seitentabelle kann der Hauptprozessor mit Hilfe der Memory Management Unit (MMU) eine genaue Zuordnung zwischen der virtuellen und der physischen Speicheradresse vornehmen. [2][3] Dabei muss nicht jede physische Speicheradresse tatsächlich im Hauptspeicher sein, da durch Swapping derzeit nicht benötigte Speicherteile auf Schattenspeicher (paging area) der Festplatte ausgelafert werden können.

Sprachlich wird dabei zwischen den Seiten (pages) im virtuellen Adressraum und den Seitenrahmen oder Kachel (page frames) im realen Adressraum unterschieden. [3]

Beispiel

In IA32-Architekturen wird jede 32 Bit breite Adresse wie folgt interpretiert:

  • 20 Bit geben die gewählte Speicherseite an, also maximal 220 Speicherseiten.
  • 12 Bit geben den Offset in der Speicherseite an, also 212 Byte gleich 4 KiB (jeder Eintrag in der Seite ist 1 Byte groß), ist die Gesamtgröße einer durch das Betriebssystem festgelegten Speicherseite und gleichzeitig Größe der Kachel.
Seitenadressierung (Paging)
Seitenadressierung (Paging)
  1. Andrew S. Tanebaum, Herbert Bos: MODERN OPERATING SYSTEMS. 4. Auflage. Pearson, 2015, ISBN 978-0-13-359162-0.
  2. a b Christian Baun: Operating Systems / Betriebssysteme. Springer Vieweg, Wiesbaden 2020, ISBN 978-3-658-29785-5.
  3. a b c Peter Mandl: Grundkurs Betriebssysteme. 5. Auflage. Springer Vieweg, Wiesbaden 2020, ISBN 978-3-658-30547-5.