Subject: Re: RFC: migration to a fully dynamically linked system
To: None <tech-userlevel@netbsd.org>
From: Greg A. Woods <woods@weird.com>
List: tech-userlevel
Date: 12/20/2001 23:54:35
[ On , December 20, 2001 at 17:58:33 (-0800), cgd@broadcom.com wrote: ]
> Subject: Re: RFC: migration to a fully dynamically linked system
>
> > 		- dynamic linked applications apparently run slower
> > 		  than statically linked applications.
> > 		  Adding support for "prebinding" (in the newer
> > 		  binutils toolchain for some platforms) alleviates
> > 		  most (if not all) of this.
> 
> s/apparently//

You can say that again!  ;-)

> Does pre-binding do anything to touch the 'runs slower' problem?  (I
> thought it just helped -- but did not completely address -- the
> 'starts slower' problem.)

From what I've read of experience with pre-binding in the NeXT/Darwin
circles it is a very significant help, but it can never eliminate the
all the overhead.  Unless ld.so is a kernel service and all libraries
are first pre-loaded by the kernel there are always necessarily some
additional I/Os on every exec() of a dynamic linked program.

What can also win just as much is getting better locality of references
in all shared libraries and binaries.

-- 
								Greg A. Woods

+1 416 218-0098;  <gwoods@acm.org>;  <g.a.woods@ieee.org>;  <woods@robohack.ca>
Planix, Inc. <woods@planix.com>; VE3TCP; Secrets of the Weird <woods@weird.com>