Das Schlüsseldifferenze zwischen logischer Adresse und physikalischer Adresse ist das Die CPU erzeugt während der Programmausführung eine logische Adresse, während die physikalische Adresse ein Ort in der Speichereinheit ist.
In einfachen Worten, die CPU generiert die logische Adresse oder virtuelle Adresse. Aus der Perspektive eines laufenden Programms scheint sich ein Element an der von der logischen Adresse angegebenen Adresse zu befinden. Speichereinheit überwacht die physikalische Adresse. Darüber hinaus ermöglicht es den Zugriff auf eine bestimmte Speicherzelle im Hauptspeicher durch den Datenbus.
1. Übersicht und Schlüsseldifferenz
2. Was ist die logische Adresse?
3. Was ist die physische Adresse?
4. Side-by-Side-Vergleich - Logische Adresse und physikalische Adresse in Tabellenform
5. Zusammenfassung
CPU generiert logische Adresse. Aus der Perspektive eines laufenden Programms scheint sich ein Element an der von der logischen Adresse angegebenen Adresse zu befinden. Anwendungsprogramme, die auf dem Computer ausgeführt werden, sehen die physischen Adressen nicht. Sie arbeiten immer mit den logischen Adressen. Der logische Adressraum ist die Menge der logischen Adressen, die ein Programm generiert. Die logischen Adressen müssen vor ihrer Verwendung physischen Adressen zugeordnet werden. Die Speicherverwaltungseinheit (MMU) des Hardwaregeräts übernimmt diesen Zuordnungsprozess.
Die MMU folgt mehreren Abbildungsschemata. Im einfachsten Zuordnungsschema wird der Wert im Umzugsregister zu jeder logischen Adresse addiert, die von Anwendungsprogrammen erzeugt wird, bevor sie an den Speicher gesendet werden. Es gibt auch einige andere komplexe Methoden, um das Mapping zu generieren. Die Adressbindung (d. H. Das Zuweisen von Befehlen und Daten zu Speicheradressen) kann zu drei verschiedenen Zeitpunkten erfolgen.
Abbildung 01: Logische und physikalische Adresse
Erstens kann es während der Kompilierzeit passieren, wenn die tatsächlichen Speicherplätze im Voraus bekannt sind, und dies würde den absoluten Code in der Kompilierzeit erzeugen. Es kann auch beim Laden vorkommen, wenn die Speicherplätze nicht im Voraus bekannt sind. Dafür muss zum Kompilierzeitpunkt ein neu lokalisierbarer Code generiert werden. Außerdem kann die Adressbindung zur Ausführungszeit erfolgen. Dies erfordert Hardwareunterstützung für die Adresszuordnung. Bei der Adressbindung von Kompilierzeit und Ladezeit sind logische und physikalische Adressen gleich. Dieses Verfahren unterscheidet sich jedoch, wenn die Adressbindung in der Ausführungszeit erfolgt.
Die Speichereinheit überwacht die physikalische Adresse oder die reale Adresse. Dadurch kann der Datenbus auf eine bestimmte Speicherzelle im Hauptspeicher zugreifen. MMU ordnet die logische Adresse der physischen Adresse zu. Unter Verwendung des einfachsten Zuordnungsschemas, das den Verschiebungsregister (angenommen, dass der Wert in dem Register y ist) zur logischen Adresse hinzufügt, würde beispielsweise eine logische Adresse von 0 bis x einem physikalischen Adressbereich y bis x + zugeordnet werden y.
Darüber hinaus wird dies auch als physischer Adressraum dieses Programms bezeichnet. Alle logischen Adressen müssen in physische Adressen abgebildet werden, bevor sie verwendet werden können.
Logische Adresse vs. physikalische Adresse | |
Logische Adresse ist die Adresse, an der sich ein Element aus der Perspektive eines ausführenden Anwendungsprogramms befindet. | Die physikalische Adresse ist eine Speicheradresse, die in Form einer Binärzahl auf der Adressbusschaltung dargestellt ist, um dem Datenbus den Zugriff auf a zu ermöglichen besonders Speicherzelle des Hauptspeichers oder ein Register eines E / A-Geräts mit Speicherzuordnung. |
Sichtweite | |
Der Benutzer kann die logische Adresse eines Programms anzeigen. | Der Benutzer kann die physische Adresse des Programms nicht anzeigen. |
Methode der Erzeugung | |
CPU generiert die logische Adresse. | MMU berechnet die physikalische Adresse. |
Zugänglichkeit | |
Der Benutzer kann die logische Adresse verwenden, um auf die physische Adresse zuzugreifen. | Der Benutzer kann nicht direkt auf die physische Adresse zugreifen. |
Der Unterschied zwischen der logischen Adresse und der physikalischen Adresse besteht darin, dass die CPU bei der Ausführung des Programms eine logische Adresse generiert, während die physikalische Adresse ein Ort in der Speichereinheit ist. Alle logischen Adressen müssen physischen Adressen zugeordnet werden, bevor sie von der MMU verwendet werden können. Physische und logische Adressen sind bei der Adressbindung für die Kompilierzeit und Ladezeit identisch, bei der Adressbindung für die Ausführungszeit jedoch unterschiedlich.
1. "Logische Adresse". Wikipedia, Wikimedia Foundation, 30. April 2018. Hier verfügbar
2. „Physikalische Adresse“. Wikipedia, Wikimedia Foundation, 30. April 2018. Hier verfügbar
1.'MMU-Prinzip'von Andre Schieleit - Eigenes Werk, (Public Domain) via Commons Wikimedia