Hi All, As I see in my system, around 4 GB of virtual address space is mapped to a process. Theoretically, CMIIW, I should be able to use 4GB of virtual address space. >From the output from /proc/30563/maps below, there exists a significant gap or a hole from vma's end address 00978000 to another vma's start address 08048000. Because of these gaps we'll not be able utilize complete address space allocated to a process. *************************************************************************** [bash: /usr2/vskrishn]$ ./test & [1] 30563 ========================================================================== [bash: /usr2/vskrishn]$ [bash: /usr2/vskrishn]$ cat /proc/30563/maps 00835000-0084a000 r-xp 00000000 08:11 385942 /lib/ld-2.3.4.so 0084a000-0084b000 r--p 00015000 08:11 385942 /lib/ld-2.3.4.so 0084b000-0084c000 rw-p 00016000 08:11 385942 /lib/ld-2.3.4.so 0084e000-00972000 r-xp 00000000 08:11 386926 /lib/tls/libc-2.3.4.so 00972000-00973000 r--p 00124000 08:11 386926 /lib/tls/libc-2.3.4.so 00973000-00976000 rw-p 00125000 08:11 386926 /lib/tls/libc-2.3.4.so 00976000-00978000 rw-p 00976000 00:00 0 08048000-08049000 r-xp 00000000 00:1e 2191602 /usr2/vskrishn/test 08049000-0804a000 rw-p 00000000 00:1e 2191602 /usr2/vskrishn/test b7ff2000-b7ff3000 rw-p b7ff2000 00:00 0 bff69000-c0000000 rw-p bff69000 00:00 0 ffffe000-fffff000 ---p 00000000 00:00 0 =========================================================================== [bash: /usr2/vskrishn]$ pmap 30563 30563: ./test 00835000 84K r-x-- /lib/ld-2.3.4.so 0084a000 4K r---- /lib/ld-2.3.4.so 0084b000 4K rw--- /lib/ld-2.3.4.so 0084e000 1168K r-x-- /lib/tls/libc-2.3.4.so 00972000 4K r---- /lib/tls/libc-2.3.4.so 00973000 12K rw--- /lib/tls/libc-2.3.4.so 00976000 8K rw--- [ anon ] 08048000 4K r-x-- /usr2/vskrishn/test 08049000 4K rw--- /usr2/vskrishn/test b7ff2000 4K rw--- [ anon ] bff69000 604K rw--- [ stack ] ffffe000 4K ----- [ anon ] total 1904K [bash: /usr2/vskrishn]$ ********************************************************************** can any one help me out with What are these gaps for? why are those gaps formed? Is there any way to optimize/reduce those gaps? any reference to text/source which can clarify would be helpful too? I hope the gap at the end refers to the Heap, so not bothered much about it. thanks -kris PS: test.c #include <stdio.h> #include <stdlib.h> int main() { sleep(30); } -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ