This is the mail archive of the cygwin 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: Process map and fork problems


On Apr 20 12:46, Corinna Vinschen wrote:
> Hi Achim,
> 
> On Apr 20 10:27, Achim Gratz wrote:
> > I'm chasing a problem on some 32bit Windows installs that supposedly
> > happened after one of the Windows updates (and probably other software
> > updates) in the last few months (the affected users were unable to pin it
> > down further unfortunately).  It's obviously caused by two heap sections in
> > the process map that are smack dab in the middle of the address range used
> > by rebase:
> > 
> > 20000000-200A0000 rw-p 00000000 0000:0000 0                   [heap]
> > 200A0000-38000000 ===p 000A0000 0000:0000 0                   [heap]
> 
> This is one heap.  The first region is just the already committed
> part, the remainder is the reserved part.
> 
> THis is the standard Cygwin heap area on 32 bit machines, which always
> starts at 0x20000000.
> 
> > These do not exist on 32bit Cygwin installs on 64bit Windows installations,
> 
> On 64 bit systems, 32 bit applications have a 4 Gig virtual address
> space.  On 32 bit systems, procecces only have a 2 Gig virtual address
> space, unless the /3gb kernel option is given.
> 
> On 64 bit systems and on /3gb enabled 32 bit systems, the heap of 32 bit
> Cygwin processes always starts at 0x80000000L.
> 
> Since that isn't available on 32 bit systems by default, the heap has
> to start within the lower 2 Gigs.  That's where the 0x2000000 address
> comes from.
> 
> If you have collisions because you're providing too many Cygwin DLLs,
> you have to tweak these installations manually.

We could also move the heap address for default 32 bit systems to
0x30000000 or 0x40000000 or whatever is more convenient.  However, every
memory area has its own problems in the tight 32 bit address space.
We shouldn't do this without more testing.

Alternatively, kick out the 32 bit systems ;)


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Attachment: signature.asc
Description: PGP signature


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