lkml.org 
[lkml]   [2005]   [Jan]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: ptrace single-stepping change breaks Wine
Mike Hearn <mh@codeweavers.com> wrote:
>
> Also a precise description of what flex-mmap does would be good. Google
> wasn't too informative, best I could get was that it means mmap
> allocates from the "top" of the address space down. But where is the top
> exactly?

Ingo has described it thus:


before:

0x08000000 ... binary code
0x08xxxxxx ... brk area
0x40000000 ... start of mmap, new mmaps go after old ones
0xbfxxxxxx ... stack
after:

0x08000000 ... binary code
0x08xxxxxx ... brk area
0xbfxxxxxx ... _end_ of all mmaps, new mmaps go below old ones
0xbfyyyyyy ... stack
the 'after' layout guarantees that brk area (malloc()) can grow
unlimited and mmap() can grow unlimited - they will meet somewhere
inbetween when almost all of the VM is used up. [the 'top' of the mmaps
in the 'after' layout is constrained by the stack ulimit - the stack
must still fit and we never allocate into the stack's yet unallocated
and growable hole.]

with the 'before' layout we've got 900 MB for brk() and 1.9GB for
mmaps() - a rigid limit.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:09    [W:0.182 / U:0.428 seconds]
©2003-2014 Jasper Spaans. Advertise on this site