Qu'est-ce que la liaison d'adresse (Address Binding) ?
La mémoire informatique utilise à la fois des adresses logiques et des adresses physiques. La liaison d'adresse alloue un emplacement de mémoire physique à un pointeur logique en associant une adresse physique à une adresse logique, également connue sous le nom d'adresse virtuelle. La liaison d'adresse fait partie de la gestion de la mémoire informatique et elle est effectuée par le système d'exploitation au nom des applications qui ont besoin d'accéder à la mémoire.
Gestion de la mémoire
La liaison d'adresse se rapporte à la façon dont le code d'un programme est stocké en mémoire. Les programmes sont écrits en texte lisible par l'homme, suivant une série de règles définies par les exigences structurelles du langage de programmation, et en utilisant des mots-clés qui sont interprétés en actions par l'unité centrale de traitement (CPU) de l'ordinateur. Le moment où la version exécutable d'un programme est créé dicte quand la liaison d'adresse se produit. Certains langages de programmation, tels que "C" et COBOL, ont besoin d'être compilés, tandis que d'autres, principalement des scripts, s'exécutent à partir du texte original du programme plutôt que d'une version binaire compilée en code machine.
Temps de compilation
Le premier type de liaison d'adresse est la liaison d'adresse au temps de compilation. Cela alloue un espace en mémoire au code machine d'un ordinateur lorsque le programme est compilé en un fichier binaire exécutable. La liaison d'adresse alloue une adresse logique au point de départ du segment en mémoire où le code objet est stocké. L'allocation de mémoire est à long terme et ne peut être modifiée qu'en recompilant le programme.
Temps de chargement
Si l'allocation de mémoire est désignée au moment où le programme est alloué, alors aucun programme ne peut jamais être transféré d'un ordinateur à un autre dans son état compilé. C'est parce que le code exécutable contiendra des allocations de mémoire qui pourraient déjà être utilisées par d'autres programmes sur le nouvel ordinateur. Dans cette instance, les adresses logiques du programme ne sont pas liées aux adresses physiques jusqu'à ce que le programme soit invoqué et chargé en mémoire.
Temps d'exécution
La liaison d'adresse au temps d'exécution s'applique généralement seulement aux variables dans les programmes et est la forme la plus courante de liaison pour les scripts, qui ne sont pas compilés. Dans ce scénario, le programme demande de l'espace mémoire pour une variable dans un programme la première fois que cette variable est rencontrée pendant le traitement des instructions dans le script. La mémoire allouera de l'espace à cette variable jusqu'à ce que la séquence du programme se termine, ou à moins qu'une instruction spécifique dans le script ne libère l'adresse mémoire liée à une variable.
