This is the mail archive of the cygwin-apps@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Making cygwin1.dll, unrelocateable.


On Tue, Jun 11, 2002 at 11:02:20AM -0400, Christopher Faylor wrote:
> On Tue, Jun 11, 2002 at 08:59:19AM -0400, Jason Tishler wrote:
> >On Sun, Jun 09, 2002 at 09:59:28PM -0400, Christopher Faylor wrote:
> >> I think we agreed a while ago that it would be a good idea to make the
> >> cygwin DLL always occupy the same space in memory.  I know that this
> >> would be a good thing for cases where c++ method pointers are stored in
> >> shared memory.
> >
> >The above will remove the special case in setup.exe's rebase
> >functionality to skip rebasing the Cygwin DLL.  Although, can we change
> >the ImageBase from 0x61000000 to 0x60000000 to avoid having to rebase
> >around it?
> 
> Why does that help?  IIRC when I chose the 0x61000000 location, I did so
> because using 0x60000000 (which, I think, is the "correct" proposed
> location for cygwin) conflicted with some other Windows DLL.

Various sources seem to indicate that the "best" range to rebase DLLs is
0x60000000 - 0x68000000.  One source is the MSDN:

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/tools/perfutil_2z39.asp

Specifically,

    Therefore, you should base your DLLs from 0x60000000 to 0x68000000.

So, I thought that it would be easiest to locate the Cygwin DLL at
0x60000000 and rebase the app DLLs down from 0x68000000.

Regarding the conflict, the above URL states the following:

    The system DLLs are currently based in memory from 0x70000000 to
    0x78000000 (0x68000000 to 0x78000000 on MIPS).

so there "shouldn't" be a conflict with the Windows system DLLs.  Do you
recall precisely which DLL caused the conflict?

Jason


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]