Éditeurs de liens, chargeurs et exécutables
Quelle caractéristique de la section .bss est correcte ?
- AC'est la zone où les variables locales d'une fonction sont placées à chaque appel
- BC'est la zone des variables sans valeur initiale (ou à 0) ; seule sa taille est enregistrée dans le fichier, et elle est remplie de 0 au chargement
- CC'est une zone non inscriptible où sont placées les chaînes constantes
Afficher la réponse et l'explication
Réponse : B. C'est la zone des variables sans valeur initiale (ou à 0) ; seule sa taille est enregistrée dans le fichier, et elle est remplie de 0 au chargement
Les variables globales et statiques sans valeur initiale commencent à 0 selon les règles du C. Comme il serait inutile de stocker une suite de 0 dans le fichier, seule la taille de la section .bss est enregistrée, et le chargeur réserve la mémoire et la remplit de 0. Ainsi, même avec « static char buf[1000000]; », l'exécutable ne grossit pas de 1 MB.
Continuer : 9 autres questions sur Éditeurs de liens, chargeurs et exécutables