Re: Unfortunate dynamic linking for everything

From: Peter Jeremy <peterjeremy_at_optushome.com.au>
Date: Thu, 20 Nov 2003 20:52:14 +1100
On Wed, Nov 19, 2003 at 11:18:47AM -0700, Lyndon Nerenberg wrote:
>--On Wednesday, November 19, 2003 12:30 AM -0500 Garance A Drosihn 
><drosih_at_rpi.edu> wrote:
>
>>have a:  chflags ldcache /bin/sh
>
>Shouldn't that be 'chmod +t /bin/sh' ???

Definitely.  Why waste a new bit when there's already a perfectly good
one that is (or was) defined for the purpose.

As for the implementation, I presume the desired behaviour would be to
snapshot the process image (make it copy-on-write) at the point where
ld-elf.so invokes main().  You'd probably want LD_BIND_NOW behaviour
to minimise the runtime overheads.  I don't see any need for this to
need massive amounts of RAM - there's no reason why the "snapshot"
couldn't be paged normally.

I think this would be a big win compared to what we have now - the
full benefits of dynamic linking remain and most of the run-time
binding overheads are removed.

Of course it's not perfect.  The snapshot image permanently occupies
virtual space (RAM/swap).  And there's still the PIC overhead -
especially on register-starved architectures like the i386.

I wonder how difficult this would be to implement in userland only?

Peter
Received on Thu Nov 20 2003 - 00:52:29 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:30 UTC