Разборка двоичного файла ELF в системе Ubuntu x86 Я не мог не заметить, что раздел кода (.text) начинается с виртуального адреса 0x8048000, и все нижние адреса памяти, похоже, не используются.Почему адреса виртуальной памяти для Linux-файлов начинаются с 0x8048000?
Это кажется довольно расточительным, и все Google появляется либо folklore involving STACK_TOP, либо защита от нулевых указателей. Последний случай выглядит так, что его можно исправить, используя одну страницу вместо того, чтобы оставить зазор в 128 МБ.
Итак, мой вопрос заключается в том, есть ли окончательный ответ на вопрос, почему макет был привязан к этим значениям или это просто произвольный выбор?
Я не знаю ответа на данный вопрос; но, возможно, эта статья может помочь или хотя бы обеспечить интересное чтение! http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html –
Возможный дубликат [Почему виртуальный адрес точки ввода элемента ELF формы 0x80xxxxx, а не нуль 0x0?] (http: // stackoverflow .com/вопросы/2187484/почему-это-The-эльф-исполнение-точка входа в виртуальную-адрес-оф-форм-0x80xxxxx-и-п) –