Différence entre l'adresse logique et l'adresse physique

Table des matières:

Différence entre l'adresse logique et l'adresse physique
Différence entre l'adresse logique et l'adresse physique

Vidéo: Différence entre l'adresse logique et l'adresse physique

Vidéo: Différence entre l'adresse logique et l'adresse physique
Vidéo: 16 - CCNA 01 - Chapitre 03 - L'adressage logique et physique 2024, Novembre
Anonim

La principale différence entre l'adresse logique et l'adresse physique est que le CPU génère une adresse logique pendant l'exécution du programme alors que l'adresse physique est un emplacement dans l'unité de mémoire.

En termes simples, le CPU génère l'adresse logique ou l'adresse virtuelle. Du point de vue d'un programme en cours d'exécution, un élément semble se trouver à l'adresse fournie par l'adresse logique. L'unité de mémoire respecte l'adresse physique. De plus, il permet d'accéder à une cellule mémoire particulière de la mémoire principale par le bus de données.

Différence entre l'adresse logique et l'adresse physique - Résumé de la comparaison
Différence entre l'adresse logique et l'adresse physique - Résumé de la comparaison
Différence entre l'adresse logique et l'adresse physique - Résumé de la comparaison
Différence entre l'adresse logique et l'adresse physique - Résumé de la comparaison

Qu'est-ce qu'une adresse logique ?

CPU génère une adresse logique. Du point de vue d'un programme en cours d'exécution, un élément semble se trouver à l'adresse fournie par l'adresse logique. Les programmes d'application qui s'exécutent sur l'ordinateur ne voient pas les adresses physiques. Ils fonctionnent toujours en utilisant les adresses logiques. L'espace d'adressage logique est l'ensemble des adresses logiques générées par un programme. Il est nécessaire de mapper les adresses logiques aux adresses physiques avant de les utiliser. L'unité de gestion de la mémoire (MMU) du périphérique matériel gère ce processus de mappage.

Schémas de mappage MMU

MMU suit plusieurs schémas de mappage. Dans le schéma de mappage le plus simple, la valeur dans le registre de relocalisation est ajoutée à chaque adresse logique produite par les programmes d'application avant de les envoyer à la mémoire. Il existe également d'autres méthodes complexes pour générer le mappage. La liaison d'adresse (c'est-à-dire l'allocation d'instructions et de données dans des adresses mémoire) peut se produire à trois moments différents.

Différence entre l'adresse logique et l'adresse physique
Différence entre l'adresse logique et l'adresse physique
Différence entre l'adresse logique et l'adresse physique
Différence entre l'adresse logique et l'adresse physique

Figure 01: Adresse logique et physique

Premièrement, cela peut arriver au moment de la compilation si les emplacements mémoire réels sont connus à l'avance, et cela générerait le code absolu au moment de la compilation. Cela peut également se produire au moment du chargement si les emplacements mémoire ne sont pas connus à l'avance. Pour cela, du code relocalisable doit être généré au moment de la compilation. De plus, la liaison d'adresse peut se produire au moment de l'exécution. Cela nécessite une prise en charge matérielle pour le mappage d'adresses. Dans la liaison d'adresse au moment de la compilation et au moment du chargement, les adresses logiques et physiques sont les mêmes. Mais cette procédure est différente lorsque la liaison d'adresse se produit au moment de l'exécution.

Qu'est-ce qu'une adresse physique ?

L'unité de mémoire observe l'adresse physique ou l'adresse réelle. Il permet au bus de données d'accéder à une cellule mémoire particulière de la mémoire principale. MMU mappe l'adresse logique à l'adresse physique. Par exemple, en utilisant le schéma de mappage le plus simple, qui ajoute la valeur du registre de relocalisation (en supposant que la valeur dans le registre est y) à l'adresse logique, une adresse logique comprise entre 0 et x correspondrait à une plage d'adresses physiques y à x + y.

De plus, c'est aussi appelé l'espace d'adressage physique de ce programme. Toutes les adresses logiques doivent être mappées en adresses physiques avant de pouvoir être utilisées.

Quelle est la différence entre l'adresse logique et l'adresse physique ?

Adresse logique vs adresse physique

L'adresse logique est l'adresse à laquelle un élément semble résider du point de vue d'un programme d'application en cours d'exécution. L'adresse physique est une adresse mémoire qui est représentée sous la forme d'un nombre binaire sur le circuit du bus d'adresse afin de permettre au bus de données d'accéder à une cellule de stockage particulière de la mémoire principale, ou à un registre de mémoire mappé I /O périphérique.
Visibilité
L'utilisateur peut voir l'adresse logique d'un programme. L'utilisateur ne peut pas voir l'adresse physique du programme.
Méthode de génération
CPU génère l'adresse logique. MMU calcule l'adresse physique.
Accessibilité
L'utilisateur peut utiliser l'adresse logique pour accéder à l'adresse physique. L'utilisateur ne peut pas accéder directement à l'adresse physique.

Résumé - Adresse logique vs adresse physique

La différence entre l'adresse logique et l'adresse physique est que le CPU génère une adresse logique lorsque le programme s'exécute alors que l'adresse physique est un emplacement dans l'unité de mémoire. Toutes les adresses logiques doivent être mappées en adresses physiques avant que la MMU puisse les utiliser. Les adresses physiques et logiques sont les mêmes lors de l'utilisation de la liaison d'adresse de temps de compilation et de chargement, mais elles diffèrent lors de l'utilisation de la liaison d'adresse de temps d'exécution.

Conseillé: