It does things differently; it compiles the DLLs to run at a
particular base address; provided every DLL is compiled at a different
base, then it can be mapped directly into the right memory space.  If
there are overlaps between the compiled bases, then the loader can
relocate DLLs until it figures out the best way to fit them all into
the address space.  This step becomes more expensive and more likely
to occur as the quantity of DLLs used by a process increases.

This is a rough explantation, based on an article I read about a year
ago.  If I'm wrong, then I cite misinformation as the cause ;-)

--Wez.

On 6/28/05, Derick Rethans <[EMAIL PROTECTED]> wrote:
> On Tue, 28 Jun 2005, Wez Furlong wrote:
> 
> > It doesn't hurt anything; in fact, a single big DLL is more resource
> > efficient than a number of smaller DLLs on win32, as the kernel
> > doesn't need to spend as much time relocating the DLLs.
> 
> Jus twondering... windows has no non-pic thing?
> 
> Derick
> --
> Derick Rethans
> http://derickrethans.nl | http://ez.no | http://xdebug.org
>

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to