Désassemblage d'un binaire ELF sur un système Ubuntu x86 Je ne pouvais m'empêcher de remarquer que la section de code (.text) partait de l'adresse virtuelle 0x8048000 et que toutes les adresses de mémoire inférieure semblaient être inutilisées.Pourquoi les adresses de mémoire virtuelle pour les binaires Linux commencent-elles à 0x8048000?
Cela semble être un gaspillage et tout ce que Google affiche est folklore involving STACK_TOP ou une protection contre les déréférences null-pointer. Ce dernier cas semble pouvoir être résolu en utilisant une seule page au lieu de laisser un espace de 128 Mo. Donc, ma question est la suivante: y a-t-il une réponse définitive à la question de savoir pourquoi la mise en page a été fixée à ces valeurs ou est-ce simplement un choix arbitraire?
Je ne connais pas la réponse réelle; mais peut-être que cet article pourrait aider ou au moins fournir une lecture intéressante! http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html –
duplication possible de [Pourquoi l'adresse virtuelle du point d'entrée d'exécution ELF est-elle 0x80xxxxx et non 0x0?] (http: // stackoverflow .com/questions/2187484/pourquoi-est-le-elf-execution-entrée-point-adresse-virtuelle-de-la-forme-0x80xxxxx-et-n) –