Re: Memory statistics
- From: "Matthias Clasen" <matthias clasen gmail com>
- To: "Federico Mena Quintero" <federico ximian com>
- Cc: performance-list gnome org, David Turner <dturner soremo com>
- Subject: Re: Memory statistics
- Date: Sat, 22 Apr 2006 14:49:12 -0400
On 4/21/06, Federico Mena Quintero <federico ximian com> wrote:
> On Sat, 2006-04-22 at 00:16 +0200, David Turner wrote:
> > Alas, non-const arrays are not the only problem. With
> > position-independent code, any constant
> > _pointer_ will be stored in writable pages, to be relocated by the
> > dynamic loader before being usable.
>
> Yeah :( Andrea's patch kills most of .data from libpng, but the final
> VMA is only slightly smaller.
>
> > This has a huge impact on C++ libraries, since all their VTables contain
> > constant pointers (try running
> > your script on a KDE system !).
>
> ... or on OpenOffice. Michael "I want to be like him when I grow up -
> oh, wait, he's younger than me" Meeks has been kicking some ass in that
> front.
>
> > It'd be nice if the dynamic linker was able to automatically share the
> > updated pointers between
> > processes which map the same libraries to the same virtual addresses,
> > but I don't think this has been
> > implemented yet, since it would require a new ELF section, as well as
> > modifications to the
> > compilers.
>
> Wouldn't something like this need to happen:
>
> 1. program gets run; linker does the fixups
>
> 2. linker writes "libfoo.so got put at 0x12345678, here is a
> list of resolved relocations: <...>"
>
> 3. another program gets run.
>
> 4. linker looks in its archive from (2) to see if it had
> already resolved libfoo.so at some address.
>
> Sounds like pain.
>
Sounds a lot like what prelink already does...
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]