Différence principale
La différence entre l’éditeur de liens et le chargeur est que l’éditeur de liens génère un module exécutable d’un programme source tandis que le chargeur charge le module exécutable dans la mémoire principale.
Linker vs Loader
Il existe des programmes utilitaires qui jouent le rôle principal dans l’exécution de tout programme; il existe deux types de programmes utilitaires qui sont linker et loader. Tout code source d’un programme doit passer par le compilateur, l’assembleur, l’éditeur de liens, le chargeur et c’est l’ordre d’exécution de tout programme. L’éditeur de liens intègre les codes objets générés par l’assembleur et les combine pour générer le module exécutable. Loader, en revanche, charge le module exécutable dans la mémoire principale pour l’exécution. Le programme à exécuter est présent dans la mémoire principale. Chargeur, chargez le fichier exécutable dans le système d’exploitation. Loader alloue l’espace mémoire au module exécutable dans la mémoire principale. Il existe trois types de chargeur qui sont: chargeur absolu, chargeur déplaçable et chargement dynamique du temps d’exécution. Ces trois chargeurs ont des approches de chargement différentes qui sont l’approche de chargement absolue, l’approche de chargement déplaçable et l’approche de chargement dynamique au moment de l’exécution
L’assembleur et le compilateur ne sont pas le même processus, mais ils font le même travail, c’est-à-dire qu’ils génèrent le code objet d’un programme source et le remettent à l’éditeur de liens. Le processus principal de l’éditeur de liens consiste à prendre le code objet et à générer le code exécutable du programme une fois ce travail de l’éditeur de liens terminé et à attribuer le code au chargeur. Il existe des bibliothèques et des fichiers d’en-tête intégrés dans un langage de haut niveau. Certaines fonctions de bibliothèque sont définies dans les bibliothèques intégrées. Le chargeur absolu charge le fichier exécutable du programme dans le même emplacement de mémoire principale. Dans absolute loader, le programmeur doit être conscient de l’affectation. Le chargeur de déplacement compile ou assemble l’adresse de mémoire principale réelle. Chargeur de temps d’exécution dynamique, programme de mémoire absolue est généré lorsqu’une instruction est exécutée. Les fonctions sont liées à une fonction de bibliothèque par l’éditeur de liens. Le compilateur est informé dans le cas où la fonction de bibliothèque n’est pas trouvée de la fonction particulière. Lorsqu’il y a un programme volumineux, il est divisé en programmes plus petits appelés modules. Les modules objets sont générés lorsque ces modules sont compilés ou assemblés. L’éditeur de liens doit combiner l’ensemble du programme ensemble. Il existe deux types d’éditeur de liens, l’un est un éditeur de liaison qui génère un module exécutable relocalisé et l’autre est un éditeur de liens dynamique qui relie les modules externes jusqu’à ce que le module de charge soit généré.
Tableau Comparatif
Éditeur de liens | Chargeur |
L’éditeur de liens génère un module exécutable d’un programme source | Le chargeur charge le module exécutable dans la mémoire principale. |
Entrée | |
L’éditeur de liens prend en entrée un code objet par l’assembleur | Le chargeur prend le module exécutable a une entrée |
Fonction | |
L’éditeur de liens combine tous les modules d’objets | Le chargeur alloue l’adresse à un fichier exécutable |
Type | |
Les types de l’éditeur de liens sont l’éditeur de liaison et l’éditeur dynamique | Les types de chargeur sont le chargeur absolu, le chargeur d’exécution dynamique et le chargeur de déplacement. |
Qu’est-ce que Linker ?
Assembleur et compilateur ne sont pas les mêmes processus, mais ils font le même travail qu’ils génèrent le code objet d’un programme source et le remettent à l’éditeur de liens. Le processus principal de l’éditeur de liens consiste à prendre le code objet et à générer le code exécutable du programme une fois ce travail d’éditeur de liens terminé, et il attribue le code au chargeur. Il existe des bibliothèques et des fichiers d’en-tête intégrés dans un langage de haut niveau. Certaines fonctions de bibliothèque sont définies dans les bibliothèques intégrées. Ces fonctions sont liées à une fonction de bibliothèque par l’éditeur de liens. Le compilateur est informé dans le cas où la fonction de bibliothèque n’est pas trouvée de la fonction particulière. Lorsqu’il y a un programme volumineux, il est divisé en programmes plus petits appelés modules. Les modules objets sont générés lorsque ces modules sont compilés ou assemblés. L’éditeur de liens doit combiner l’ensemble du programme ensemble. Il existe deux types d’éditeur de liens, l’un est un éditeur de liaison qui génère un module exécutable relocalisé et l’autre est un éditeur de liens dynamique qui relie les modules externes jusqu’à ce que le module de charge soit généré.
Qu’est-ce que Loader?
Le programme à exécuter est présent dans la mémoire principale. Chargeur, chargez le fichier exécutable dans le système d’exploitation. Loader alloue l’espace mémoire au module exécutable dans la mémoire principale. Il existe trois types de chargeur: chargeur absolu, chargeur déplaçable et chargement dynamique du temps d’exécution. Ces trois chargeurs ont des approches de chargement différentes qui sont l’approche de chargement absolue, l’approche de chargement déplaçable et l’approche de chargement dynamique au moment de l’exécution. Absolute loader charge le fichier exécutable du programme dans le même emplacement de mémoire principale. Dans le chargeur absolu, le programmeur doit être conscient de l’affectation. Le chargeur de déplacement compile ou assemble l’adresse de mémoire principale réelle. Chargeur de temps d’exécution dynamique, programme de mémoire absolue est généré lorsqu’une instruction est exécutée.
Différences clés
- L’éditeur de liens génère le module exécutable d’un programme source tandis que le chargeur charge le module exécutable dans la mémoire principale.
- L’éditeur de liens prend en entrée un code objet par l’assembleur tandis que le chargeur prend le module exécutable doit entrer
- L’éditeur de liens combine tous les modules objets tandis que le chargeur alloue l’adresse à un fichier exécutable.
- Les types de l’éditeur de liens sont l’éditeur de liaison et l’éditeur dynamique, tandis que les types de chargeur sont le chargeur absolu, le chargeur à exécution dynamique et le chargeur de déplacement.