Observation for ALL maintainers who provide dlls (was Re: question for perl maintainer)
Pierre A. Humblet
Mon Jul 11 13:34:00 GMT 2005
----- Original Message -----
From: "Jason Tishler" <email@example.com>
Sent: Monday, July 11, 2005 9:06 AM
Subject: Re: Observation for ALL maintainers who provide dlls (was Re:
question for perl maintainer)
> On Fri, Jul 08, 2005 at 02:04:17PM -0400, Christopher Faylor wrote:
> > On Fri, Jul 08, 2005 at 01:42:34PM -0400, Pierre A. Humblet wrote:
> > >From: "Christopher Faylor"
> > >>Do we need to coordinate this among all package maintainers, maybe?
> > >>Maybe we could publish a list of all of the dlls in the system along
> > >>with standard base addresses for each and ask that maintainers make
> > >>sure that their DLL complies with the base address.
> > >>
> > >>The more I think about this, the more I believe that we shouldn't have
> > >>to continually tell users to run rebaseall. Setting the base address
> > >>is something that should be done once, by the maintainer, not every
> > >>time a person installs a package.
> > >
> > >Amen, but before we setup a centralized database can we evaluate if
> > >--enable-auto-image-base suffices? For example, does it currently lead
> > >to any collision?
> > Yep. That's a good first step.
> Unfortunately, I have found that the DLLs need a gap between them to
> guarantee that fork() won't fail. Additionally, I have run out of
> address space even when starting at 0x70000000 on a system with a lot a
> DLLs. So, I'm not sure the standard base address scheme will work. As
> Cygwin continues to grow (and more DLLs added), people may actually have
> to chose a subset of DLLs to rebase... :,(
How much of a gap?
So you are saying that neither --enable-auto-image-base nor the centralized
database will work...
By the way, is it reliable to use objdump -x to find the base (ImageBase) ?
For cygssl-0.9.8.dll it is 10000000, but I thought the base was 0x63000000
More information about the Cygwin-apps