Information Technology Reference
In-Depth Information
exécutable sont calculées à partir de 0, c'est-à-dire que le premier octet du code
exécutable à une adresse égale à 0. Lorsque le chargeur copie le code exécutable
depuis le disque vers la mémoire centrale, il implante le code dans un espace libre de
la mémoire centrale, dont le premier octet n'a pas forcément l'adresse 0 (et généra-
lement jamais car la mémoire haute est réservée au système), mais une adresse quel-
conque appelée adresse d'implantation mémoire . Toutes les adresses adr calculées
dans le programme exécutable stocké sur le disque doivent donc être modifiées pour
tenir compte de cette adresse d'implantation mémoire : c'est l'opération de transla-
tion des adresses qui consiste à ajouter à chaque adresse adr apparaissant dans le
programme exécutable du disque, la valeur de l'adresse d'implantation mémoire
(figure 3.9).
Éditeur de texte
Compilateur
Adresse d'implantation
en mémoire centrale
adr
adresse
d'implantation
chargeur
Éditeur de liens
0
adr
Programme relogeable
Exécutable sur disque
Figure 3.9
Chargement du programme exécutable relogeable.
Deux types de chargement peuvent être distingués :
- le chargement statique : dans ce cas, l'opération de translation des adresses adr est
effectuée une fois pour toutes au moment du chargement et les adresses sont modi-
fiées dans le programme exécutable;
- le chargement dynamique : dans ce cas, l'opération de translation n'est pas effec-
tuée au moment du chargement, mais seulement au moment où le processeur utilise
une adresse relogeable au cours de l'exécution. La valeur de l'adresse d'implanta-
tion du programme en mémoire centrale est conservée dans un registre du proces-
seur appelé le registre de translation et elle est ajoutée à l'adresse adr seulement
au moment où le processeur utilise adr.
 
Search WWH ::




Custom Search