I'm on 32bit machine. From what I understand, User space's address ranges from 0x00000000
to 0xbfffffff
, and kernel's ranges from 0xc0000000
to 0xffffffff
.
But when I used pmap to see a process's memory allocation, I see that the library are loaded in around 0xf7777777
. Please see the attached screenshot. Does it mean those libraries are loaded in kernel space? And when I used mmap()
, I got the address from 0xe0000000
. So, mmap()
got memory from kernel space?