Relocalisation
voient également : déplaçant et transfert de population de .
Dans le de l'informatique, la relocalisation est le processus de remplacer des références ou des noms symboliques des bibliothèques par des adresses utilisables réelles dans la mémoire avant de lancer un programme. Elle est typiquement faite par l'éditeur de liens pendant la compilation , bien qu'elle puisse être faite à d'exécution par un chargeur . Les compilateurs ou les monteurs produisent typiquement du exécutable avec zéro comme adresse la plus plus basse et commençante. Avant l'exécution du code d'objet, ces adresses devraient être ajustées de sorte qu'elles dénotent les adresses d'exécution correctes.
La relocalisation est typiquement faite dans deux étapes : Chaque code d'objet a de diverses sections comme le code , les données , le . Pour combiner tous les objets à un exécutable simple, l'éditeur de liens fusionne toutes les sections de type semblable dans une section simple de ce type. L'éditeur de liens assigne alors des adresses d'exécution à chaque section et à chaque symbole. En ce moment, le code (fonctions) et les données (variables globales) auront des adresses d'exécution uniques.
Une table de fixup de peut également être fournie dans l'en-tête du dossier de code d'objet. Chaque " ; fixup" ; est un indicateur à une adresse dans le code d'objet qui doit être changé quand le chargeur replace le programme. Fixups sont conçus pour soutenir la relocalisation du programme comme unité complète. Dans certains cas, chaque fixup dans la table est lui-même relativement à une adresse de base de zéro, ainsi les fixups eux-mêmes doivent être changés comme mouvements de chargeur par la table. Dans quelques architectures, compilateurs, et modèles exécutables, un fixup qui croise certaines frontières (telles qu'une frontière de segment) ou qui ne se trouve pas sur une limite de mot est illégal et diminué comme erreur par l'éditeur de liens.
Voir également
Bibliothèque dynamique Fichier objet d'exécution
Prebinding
Table de relocalisation de
Bibliothèque partagée
Bibliothèque statique
.
| Random links: | Bon homme de Benny | Penobscot | Britannique occidentale | MHTML | Rajah Sukh Jivan | Relocalización |