Qu'est-ce que la liaison d'adresse ?

Écran plat et clavier d'ordinateur - vue latérale

La liaison d'adresses alloue la mémoire de l'ordinateur au logiciel.

Crédit d'image : Ryan McVay/Photodisc/Getty Images

La mémoire de l'ordinateur utilise à la fois des adresses logiques et des adresses physiques. La liaison d'adresses alloue un emplacement de mémoire physique à un pointeur logique en associant une adresse physique à une adresse logique, également appelée adresse virtuelle. La liaison d'adresse fait partie de la gestion de la mémoire de l'ordinateur et 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 concerne la façon dont le code d'un programme est stocké en mémoire. Les programmes sont écrits dans un texte lisible par l'homme, suivant une série de règles établies par les exigences structurelles de le langage de programmation, et en utilisant des mots-clés qui sont interprétés en actions par le traitement central de l'ordinateur Unité. Le point auquel la version exécutable d'un programme est créée dicte quand la liaison d'adresse se produit. Certains langages de programme, tels que "C" et COBOL, doivent ê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 par code machine.

Vidéo du jour

Temps de compilation

Le premier type de liaison d'adresse est la liaison d'adresse au moment de la 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é. Cela est dû au fait que le code exécutable contiendra des allocations de mémoire qui peuvent déjà être utilisées par d'autres programmes sur le nouvel ordinateur. Dans ce cas, les adresses logiques du programme ne sont pas liées aux adresses physiques tant que le programme n'est pas appelé et chargé en mémoire.

Temps d'exécution

La liaison d'adresse de temps d'exécution ne s'applique généralement qu'aux variables des programmes et constitue 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 lors du traitement des instructions dans le script. La mémoire allouera de l'espace à cette variable jusqu'à la fin de la séquence du programme, ou à moins qu'une instruction spécifique dans le script ne libère l'adresse mémoire liée à une variable.