I am using mmap() to map a shared memory object to a process. My question has two parts:
1) what is the size limit for mmap() to a linux process? (is there such limit?) 
2) after the process running a while,  I think the process virtual memory address space will be somehow fragmented. Will this impact the max size I can do mmap() in this process? 
The linux kernel used is 2.6.27.  The size of the shared memory object is around 32MB. I am trying to access what is the possibility that mmap() fails with such shared memory object due to no enough virtual address space.  
 
     
     
     
    