Subject: RE: [BUG] cygwin-1.3.3-2 -- making auto-import dlls
From: "Robert Collins" <[email-masked]>
To: "Charles Wilson" <[email-masked]>
Cc: <[email-masked]>
Date: Wed, 19 Sep 2001 12:47:32 +1000

> -----Original Message-----
> From: Charles Wilson [mailto:[email-masked]]
> > Solution: don't use auto-image-base. The overhead from relocation is
> > quite low, why not let windows just do its thing.
> 
> 
> Okay, suppose I have 5 dll's that are all based at the default, 
> 0x10000000. I start an exe that depends on those 5,  so at 
> startup time 
> they all get relocated to (random) address in my exe's address space. 
> Then cygwin1.dll is loaded. But the random addresses chosen for the 
> relocation for the first 5 dlls MAY or may NOT conflict with 
> cygwin1.dll's *fixed* location.
> 
> Boom (sometimes).
> 
> How is this better than the current "boom (sometimes)" 
> behavior?  What 
> am I missing?

AFAIK Relocated .dll's will never push a .dll with a different base
address out of the way. I.E. For that set of .dll's

the program will get it's address 0x10000000, cygwin1.dll get's its base
address, and the 5 .dll's get 5 other random address's.

How is it better? With a .dll that conflicts with cygwin1.dll, it's boom
(everytime) :].

Rob

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/