Éditeurs de liens, chargeurs et exécutables
Quel est l'agencement mémoire correct d'un processus typique sous Linux notamment, des adresses basses aux adresses hautes ?
- ATexte → données → BSS → tas → (espace libre) → pile
- BPile → texte → tas → données → BSS
- CTas → pile → BSS → données → texte
Afficher la réponse et l'explication
Réponse : A. Texte → données → BSS → tas → (espace libre) → pile
Dans l'agencement typique, on trouve des adresses basses vers les hautes le texte (langage machine), les données initialisées et le BSS initialisé à 0, au-dessus desquels le tas croît vers les adresses hautes. La pile croît des adresses hautes vers les basses, et le vaste espace libre entre les deux accueille les bibliothèques partagées et les zones mmap. Les adresses réelles sont décalées à chaque exécution par l'ASLR pour des raisons de sécurité.
Continuer : 9 autres questions sur Éditeurs de liens, chargeurs et exécutables