Beeinflusst das 4-GB-RAM-Limit auf 32-Bit-Systemen auch den Swap-Speicherplatz?

11

Es ist bekannt, dass 32-Bit-Systeme nur 4 GB als maximale RAM-Größe verarbeiten können.

Gilt diese Beschränkung unter Linux auch für Swap-Partitionen? Wenn mein RAM + Swap 4 GB überschreitet, wird er dann voll genutzt?

Wenn die Antwort "Nein, gilt nicht für den Tausch" lautet, warum?

Sekhemty
quelle
3
Diese Anweisung zur Einschränkung des physischen Speichers gilt nicht für alle Plattformen ... "PAE (Physical Address Extension) ist eine Funktion, mit der 32-Bit-x86-Zentraleinheiten (CPUs) auf einen physischen Adressraum zugreifen können (einschließlich Direktzugriffsspeicher und zugeordnetem Speicher) Geräte) größer als 4 Gigabyte. " en.wikipedia.org/wiki/Physical_Address_Extension
f1assistance
1
@packets Verwirre ihn nicht mehr. Er muss wirklich zuerst grundlegende Konzepte wie virtuelles Adressieren und Paging kennenlernen.
David Marshall
1
Keine Probleme, ich habe keine Angst vor dem Lernen.
Sekhemty

Antworten:

12

Nein, stellen Sie sich vor, RAM ist wie Ihr Schreibtisch, und Swap Space / virtueller Speicher ist wie ein Aktenschrank. Sie können viele Informationen in einen Aktenschrank stellen, aber der Zugriff ist schwierig. Alle Papiere, die Sie verwenden möchten, müssen Sie herausziehen und auf den Schreibtisch legen. Das Problem ist, dass der Schreibtisch nur so viele Papiere gleichzeitig aufnehmen kann.

32-Bit-Computer können nur einen Schreibtisch mit einer Größe von 4 GB (2 ^ 32 oder etwa 4 Milliarden Byte) haben, aber sie können immer noch nahezu unbegrenzte Aktenschränke haben. Sie müssen nur die Papiere "austauschen", wenn der Schreibtisch voll ist, und sie müssen sich eine andere Seite ansehen, die sich in einem Aktenschrank befindet.


Der Grund, warum dies nicht für den Austausch gilt, liegt darin, dass der Zugriff auf den RAM-Inhalt oder die Ausführung von Code von diesem auf die Größe der Zahlen beschränkt ist, mit denen er arbeiten kann. Stellen Sie sich vor, Sie können nur 4 Milliarden Wörter auf dem Schreibtisch haben, denn das ist so hoch, wie Sie zählen können, und Sie müssen direkt mit Wörtern arbeiten. "Wort 3.547 ist falsch geschrieben. Ändern Sie Wort 3.452.780 in 'Hallo'. Löschen Sie Wort 6."

Jetzt kann jede Seite 4.000 Wörter enthalten. Der Haken ist, wenn Sie auf den Swap-Bereich verweisen, verweisen Sie nicht auf Wort, sondern nur auf Seite. Sie können also immer noch nur bis zu 4 Milliarden zählen, aber Sie können bis zu 4 Milliarden Seiten zählen. 4 Milliarden Seiten enthalten tatsächlich 16 Billionen Wörter - viel, viel höher als Sie zählen können.

64-Bit-Computer können nur höher zählen, sodass sie alle Seiten gleichzeitig auf den Schreibtisch legen können, wenn sie über einen ausreichend großen Schreibtisch verfügen. Selbst wenn Sie einen super großen Schreibtisch in einen 32-Bit-Computer einbauen, können Sie nur bis zu 4 Milliarden zählen, sodass Sie nicht auf alle zusätzlichen Wörter auf dem Schreibtisch verweisen können.

Darth Android
quelle
Was wollen Sie mir damit sagen, dass der Swap Space als Index für den RAM-Speicher fungiert? Und folglich repräsentiert ein einzelner GB Swap viel mehr Speicher als ein einzelner GB RAM? Wie auch immer, ich kann immer noch nicht verstehen, warum das System nicht mehr als 4 GB RAM verwalten kann, sondern mit Swap. Warum verwenden wir dann nicht alle Swap anstelle von RAM?
Sekhemty
1
Der Swap Space ist wie ein "entladener" Speicher und wird in viel größeren Blöcken referenziert. 1 GB RAM ist 1 GB Swap, aber RAM wird pro Byte und Swap pro Block adressiert. Ein anderes Beispiel könnte sein, über das Verpacken von Erdnüssen nachzudenken. Wie viele Verpackungserdnüsse können Sie in Ihren Händen halten? Vielleicht 100, bevor Sie versuchen, mehr aufzunehmen, lassen einige zwischen Ihren Fingern herausspringen? Wie viele Erdnüsse können Sie aufbewahren, wenn wir sie in Kartons legen? Tausende? Swap ist ein bisschen wie die Boxen. Sie können Daten in größeren Blöcken verwalten, aber nicht auf die Daten selbst zugreifen.
Darth Android
1
@Sekhemty: Auf Ihre zweite Frage, warum wir ständig Swap verwenden - Die Auslagerungsdatei ist auf Ihrer Festplatte vorhanden und die Geschwindigkeit, mit der der Computer auf Daten auf der Festplatte zugreifen kann, hängt von der Zugriffsgeschwindigkeit der Festplatte ab (und dann einige). Aber selbst die schnellsten Festplatten sind viel langsamer als der physische RAM. Es ist also eine Frage der Geschwindigkeit. Auch die aktuelle x86-Architektur erlaubt dies ohnehin nicht (kein RAM; nur Swap). Die Swap-Datei ist ein Betriebssystemkonzept, das dem System nicht bekannt ist.
Bobbyalex
10

Sie verwechseln den physischen und den virtuellen Speicher.

Der RAM ist physischer Speicher. Der Swap-Bereich kann viele virtuelle 4-GB-Adressräume enthalten.

David Marshall
quelle