En Linux, aprendí que cada proceso almacena datos comenzando en 0x08048000 en máquina de 32 bits (y 0x00400000 en máquina de 64 bits).¿Cuál es la memoria anterior a 0x08048000 utilizada en una máquina de 32 bits?
Pero no sé la razón por la cual comenzar desde allí. ¿Para qué se utiliza la memoria antes de 0x08048000?
Actualización: Algunas personas piensan que está mapeado para el kernel. Sin embargo, que yo sepa, Linux Kernel usa la memoria de gama alta comenzando después de la pila del usuario.
Algunas distribuciones (por ejemplo, RHEL6) incluso han abandonado por completo la cosa '0x08048000' vinculando programas con la bandera [' DYNAMIC'] (http://stackoverflow.com/questions/5235844/objdump-head-elf-meaning-of-flags), haciendo que sus segmentos sean asignados junto con '.so''s. –