From: John R. <jr...@bi...> - 2012-11-29 06:07:57
|
The pattern > 6cf7a000 4 ----- 0000000000000000 000:00000 [ anon ] > 6cf7b000 8192 rw--- 0000000000000000 000:00000 [ anon ] with one 4KiB page of no access (-----) adjacent to 8MiB of rw--- is [or perhaps, was] the default-sized stack of a thread. When a thread terminates, then glibc keeps that stack on a separate internal list, and allocates the stack for a new thread from this list if possible; else glibc uses mmap() to create a new stack. It seems that there is no way to tell glibc to do it differently. (You can change the default size by using pthread_attr_setstacksize(), but you cannot change the policy of keeping old stacks for use by new threads.) The pattern > 71000000 132 rw--- 0000000000000000 000:00000 [ anon ] > 71021000 892 ----- 0000000000000000 000:00000 [ anon ] with 132KiB of rw--- followed by 892KiB of no access is a peculiar one that I do not recall seeing before. -- |