Chargeur (informatique)
En informatique, le chargeur est un composant du système d'exploitation dont le rôle est de charger des programmes en mémoire, afin de créer un processus. Ses principales responsabilités sont la lecture et l'analyse du fichier exécutable, la création des ressources nécessaires à l'exécution de celui-ci, puis enfin le lancement effectif de son exécution.
Le chargeur est généralement invoqué à l'aide d'un appel système ; cependant, dans des systèmes comme Linux, des fonctionnalités comme les bibliothèques dynamiques sont gérées elles-mêmes par un programme auquel le chargeur délègue une partie de son travail.
Unix
Dans la plupart des systèmes Unix, le chargeur est appelé via la famille d'appels système execve. Ces appels diffèrent essentiellement dans les paramètres qu'il est possible de spécifier, notamment les variables d'environnement qui seront passées au programme en cours de chargement.
Système embarqué
Dans le cas particulier de système embarqué, il n'y a pas ce type de chargeur car il est inutile : tous les éléments (programmes et bibliothèques logicielles) nécessaires sont chargés dans la phase d'amorçage du système.
IBM 360 et 370 et IBM System z9
Sur ces systèmes, les adresses en mémoire sont des adresses absolues (au lieu d'être une valeur de décalage par rapport à une adresse de base). Cela nécessite pour le chargeur de recalculer les adresses.
Voir aussi
- Code objet : la partie du fichier exécutable qui doit être chargée telle quelle en mémoire
- chargeur d'amorçage