hi,
who can give some advice about this question? Because the young
men like me don't know
some history legacy.
---------- Forwarded message ----------
From: pei lin <[email protected]>
Date: 2009/2/6
Subject: Re: why linux ELF base address is 0x8048000?
To: Brian Raiter <[email protected]>
抄送: Chris Evans <[email protected]>, [email protected]
yeah,that explains some reason. But between 0x08000000 and 0x08048000
should be some other reason for X86 architecture . <<The linker and
loader>> said that "permitting most programs to use a single
second-level page table."
But i can not understand it very well.
Lin
2009/2/5 Brian Raiter <[email protected]>:
>> why linux ELF base address is 0x8048000? we can use ld to change
>> the base address or linker script.BUT why default is 0x8048000?
>> There must be some reasons or history i don't know.
>
> As far as I can tell, the reason is that this was the address used by
> SVR4, which was the first release of Unix to use ELF executables.
>
> The reason that SVR4 chose that particular address is that the stack
> top was located at 0x08000000 (growing downward, of course), and then
> the area between 0x08000000 and 0x08048000 was reserved for libc and
> possibly other system service code.
>
> b
>
--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to [email protected]
Please read the FAQ at http://kernelnewbies.org/FAQ