Was ist der maximal adressierbare Speicher?

5071
Journeyman Geek

Ich habe gerade angefangen, Montage zu lernen.

Meine Laptop-Spezifikation sagt:

Mikroprozessor: Intel Core Duo Prozessor T2300

Mikroprozessor-Cache: 2 MB L2-Cache

Speicher max: 2048 MB

Speicher: 1024 MB 667 MHz DDR2-Systemspeicher (2 Dimm)

" Intel Core Duo Prozessor T2300 " besagt:

Befehlssatz: 32-Bit

Ich denke jetzt kann ich davon ausgehen, dass der Datenbus auch mindestens 32 Bit hat. Der minimale adressierbare Speicher sollte 4 GB betragen.

Darüber hinaus erwähnen CPU-Spezifikationen auch die Speicherspezifikationen

Physische Adresserweiterungen 32-Bit

Was für mich bedeutet, dass es 64 GB Speicher adressieren kann

Bedeutet das, dass mein Laptop bei nur 2 Speichersteckplätzen auf dem Motherboard 2x 2 GB Speichersticks == (4 GB) Speicher unterstützen kann?

Ich vermute, die Laptop-Jungs gingen davon aus, dass es keine 2-GB-Sticks geben wird, daher hätten sie vielleicht Memory Max: 2048 MB genannt

3

4 Antworten auf die Frage

3
Kevin Montrose

Adressierbarer Speicher für ein 32-Bit-System ist 4 GB, physischer Speicher ist das, was installiert ist. Ihr Betriebssystem verwaltet das später, um laufenden Programmen die Illusion des ersteren zu geben. Es ist viel komplizierter als das, aber das ist der Kern davon.

PAE erhöht den physischen Speicher, den eine Maschine verwenden kann, nicht den adressierbaren Speicher. Zeiger bleiben 32-Bit, daher ist der adressierbare Speicher immer noch auf 4 GB beschränkt.

Die Speicherkapazität einer Maschine hängt von mehr ab, als die CPU leisten kann. Gehen Sie nicht davon aus, dass Ihr Gerät 4 GB unterstützen kann.

Diese Antwort ignoriert die Tatsache, dass es virtuelle Adressen und physische Adressen gibt, und die Frage bezieht sich eindeutig auf physische Adressen. Ben Voigt vor 12 Jahren 0
@Ben Wenn Sie AWE nicht verwenden, sind alle Adressen virtuell (es gibt möglicherweise einige Kernelausnahmen außerhalb des Startvorgangs, im Benutzermodus ist das jedoch definitiv wahr). Außerdem unterscheide ich die beiden in der ersten Zeile meiner Antwort. und weisen Sie darauf hin, dass mehr als nur Ihre CPU- und RAM-Slots bestimmen, was in der letzten Zeile tatsächlich adressierbar ist (Kernel / User-Mode-Division ist die große; aber das Motherboard würde auch im Weg sein). Kevin Montrose vor 12 Jahren 0
@KevinMontrose Was Sie "adressierbaren" Speicher nennen, sollte eher "virtuell" heißen. Und selbst wenn Sie AWE verwenden, sind die Adressen, die Sie in Ihrem Programm verwenden, immer noch virtuell und der Bereich ist weiterhin auf den virtuellen Adressraum im Benutzermodus beschränkt. Jamie Hanrahan vor 8 Jahren 0
1
Paul Tomblin

Neben dem Speicheradressenbereich gibt es viele Faktoren, die bestimmen, wie viel Speicher ein Computer ansprechen kann. Zum Beispiel kann der Mac Book PRo meiner Frau nur 3 GB unterstützen. Wenn Sie zwei 2-GB-Speichersticks einsetzen, werden nur 3 GB davon adressiert.

Übrigens bedeutet 32 ​​Bit, dass der Chip theoretisch 4 GB Speicher adressieren kann. Wo hast du diese 64GB-Nummer gefunden?

1
Brian Rasmussen

Hier spielen verschiedene Faktoren eine Rolle. Mit einer 32-Bit-Architektur kann das Betriebssystem 4 GB Speicherplatz adressieren. All dies ist jedoch möglicherweise nicht für Anwendungen verfügbar. Beispielsweise kann ein Windows-Computer mit 4 GB Arbeitsspeicher normalerweise nicht mehr als 3,5 GB für Betriebssystem und Anwendungen verwenden, da ein Teil des Adressraums für die Zuordnung von Hardware verwendet wird.

Außerdem teilt Windows den 32-Bit-Speicheradressraum in zwei Teile auf: 2 GB für den vom Betriebssystem verwendeten Kernelspeicher und 2 GB für Benutzeranwendungen. Dh standardmäßig kann jede Anwendung nur auf 2 GB Speicher zugreifen. Windows kann so konfiguriert werden, dass 1 GB für den Kernel und 3 GB für den Benutzer verwendet werden.

Darüber hinaus kann die tatsächliche Hardware einige Einschränkungen festlegen. Wenn die Spezifikation Ihres Laptops angibt, dass der maximale Arbeitsspeicher 2 GB beträgt, liegt dies höchstwahrscheinlich daran, dass das Motherboard maximal unterstützt. Es spielt keine Rolle, wie viel das Betriebssystem ansprechen kann. Wenn die Hardware nur 2 GB erkennt, ist dies die Grenze für den physischen Arbeitsspeicher der Maschine.

Der 32-Bit-Adressraum, den Windows in zwei 2-GB-Regionen aufteilt, ist der _virtual_-Adressraum. Das hat überhaupt nichts damit zu tun, wie viel RAM das Betriebssystem ansprechen kann. Jamie Hanrahan vor 8 Jahren 0
1
debendra nath tiwary

Nein, dem stimme ich nicht zu - ein 32-Bit-Prozessor bedeutet nicht, dass der adressierbare Speicher 4 GB beträgt. Streng gesagt sagen 32-Bit-Prozessoren aus, dass Ihre ALU-Größe 32 ist, dh sie können jeweils 32-Bit-Daten verarbeiten. * Hinweis - Eine 32-Bit-CPU bedeutet nicht die Größe des Datenbusses. Da Ihre CPU über 32 Bit verfügt, können 32-Bit-Daten (die eine Adresse sein können) bearbeitet werden, sodass sie schneller arbeiten können.

Alles, worauf es ankommt, ist die Größe Ihres Adressbusses. Bei einer Adressbusgröße von 32 Bit stehen Ihrer CPU 2 ^ 32 Speicherplätze zur Verfügung, mit denen sie kommunizieren kann. Der Standort beginnt von 0H bis FFFFFFFF. Stellen Sie sich vor, dass Ihre CPU 32 Bit hat, Ihr Adressbus jedoch nur 8 Bit. Wie viele Standorte stehen Ihrer CPU zur Verfügung? Für die Kommunikation Ihrer CPU stehen nur 2 ^ 8 = 256 Speicherplätze zur Verfügung. Da jeder Speicherort 8 Bit = 1 Byte ist, kann Ihre CPU nur bis zu 256 Byte Speicherplatz adressieren.