Éditeurs de liens, chargeurs et exécutables

Quel est l'avantage de l'agencement qui fait croître le tas et la pile d'un processus en sens opposés, avec un vaste espace libre entre eux ?

  1. AL'espace libre peut être partagé de façon souple entre les deux, sans savoir à l'avance combien chacun utilisera
  2. BLe tas et la pile pouvant utiliser simultanément les mêmes adresses, la mémoire est doublée
  3. CLa pile ne peut plus jamais déborder
Afficher la réponse et l'explication

Réponse : A. L'espace libre peut être partagé de façon souple entre les deux, sans savoir à l'avance combien chacun utilisera

Le tas croissant vers les adresses hautes et la pile vers les basses, l'espace libre intermédiaire peut servir aussi bien aux programmes qui utilisent beaucoup le tas qu'à ceux qui utilisent beaucoup la pile. Avec une taille fixe attribuée à chacun, l'un pourrait déborder alors que l'autre a de la place. Cependant, une limite est souvent fixée pour la pile, et une récursion trop profonde la dépasse et provoque un débordement de pile.

S'entraîner sur ce thème Retour au thème

Autres questions sur Éditeurs de liens, chargeurs et exécutables

  1. Quelle description de l'édition de liens statique est correcte ?
  2. Quel est l'avantage de l'édition de liens dynamique (bibliothèques partagées) ?
  3. Un programme utilisant l'édition de liens dynamique, copié sur un autre ordinateur, ne démarre pas. Quelle est la cause la plus probable ?
  4. Lors de l'édition de liens avec une bibliothèque statique (fichier .a), qu'est-ce que l'éditeur de liens intègre dans l'exécutable ?
  5. Avec l'éditeur de liens GNU, écrire une bibliothèque statique avant le fichier objet qui l'utilise, comme « gcc -lmylib main.o », peut provoquer une erreur de référence non définie. Quelle en est la raison ?

Comparatifs sur ce thème