Tutoriel recommandé : Fonctionnement et maintenance de Windows
Introduction
La collection d'adresses mémoire est appelée espace mémoire ou espace d'adressage physique. Dans la mémoire, chaque unité de stockage correspond au numéro d'adresse mémoire correspondant. Bien entendu, l'espace mémoire est unidimensionnel et linéaire.
Comment transformer plusieurs espaces linéaires virtuels unidimensionnels ou espaces linéaires multidimensionnels en le seul espace linéaire physique unidimensionnel en mémoire ? Cela implique deux problèmes : l'un est la division de l'espace virtuel et l'autre est le problème du chargement en mémoire du contenu lié et divisé dans l'espace virtuel et du mappage de l'adresse virtuelle sur une adresse mémoire, appelée relocalisation d'adresse ou adresse. cartographie.
La relocalisation d'adresse est divisée en deux types : la relocalisation d'adresse statique et la relocalisation d'adresse dynamique.
Positionnement statique
La relocalisation d'adresse statique est le travail de mappage d'adresse effectué par le programme d'assemblage avant l'exécution du programme d'espace virtuel. Pour les instructions et les données dans l'espace virtuel, la relocalisation d'adresse statique complète uniquement une transformation d'adresse continue avec une première adresse différente. Cela nécessite que tous les programmes à exécuter doivent compléter les liens entre eux avant que le programme ne soit exécuté, sinon l'adresse mémoire et l'espace mémoire corrects ne seront pas obtenus.
L'avantage de la relocalisation d'adresse statique est qu'elle ne nécessite pas de support matériel, mais l'inconvénient est qu'elle doit occuper un espace mémoire continu, ce qui rend difficile le partage de données et de programmes.
Positionnement dynamique
La relocalisation d'adresse dynamique est un programme auquel on accédera avant que le CPU n'accède à la mémoire pendant l'exécution ou la conversion. adresse de données à adresse mémoire. La relocalisation dynamique d’adresses nécessite une prise en charge matérielle.
Le mécanisme de relocalisation d'adresse nécessite un ou plusieurs registres d'adresses de base BR et un ou plusieurs registres d'adresses virtuelles de programme VR. La relation de calcul entre l'adresse mémoire MA de l'instruction ou des données et l'adresse virtuelle est la suivante : MA. =(BR) + (VR), ici (BR), (VR) représentent respectivement le contenu du registre.
Les avantages de la relocalisation dynamique sont les suivants : la mémoire peut être allouée de manière discontinue, fournit une base pour la mise en œuvre de la mémoire virtuelle et est propice au partage de programmes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!