Разборка двоичного файла ELF в системе Ubuntu x86 Я не мог не заметить, что раздел кода (.text) начинается с виртуального адреса 0x8048000, и все более низкие адреса памяти, кажется, не используются.
Это кажется довольно расточительным, и все Google появляется либо фольклор с участием STACK_TOP или защита от нулевых указателей. Последний случай выглядит так, что его можно исправить, используя одну страницу вместо того, чтобы оставить зазор в 128 МБ.
Итак, мой вопрос заключается в том, есть ли окончательный ответ на вопрос, почему макет был привязан к этим значениям или это просто произвольный выбор?