Where The Four Megabytes Went
A service running on 64-bit Linux does this and then dumps /proc/self/maps:
char *small = malloc(64);
char *big = malloc(4 * 1024 * 1024);
55d0f4a00000-55d0f4a01000 r-xp 00000000 fd:01 1443590 /opt/svc/agg
55d0f4c00000-55d0f4c01000 rw-p 00000000 fd:01 1443590 /opt/svc/agg
55d0f61a3000-55d0f61c4000 rw-p 00000000 00:00 0 [heap]
7f2a41c00000-7f2a42001000 rw-p 00000000 00:00 0
7f2a4a1c9000-7f2a4a34e000 r-xp 00000000 fd:01 2229410 /usr/lib/libc.so.6
7ffd9c7e1000-7ffd9c802000 rw-p 00000000 00:00 0 [stack]
Which mapping contains the address stored in big?
Sign in to answer questions and track your progress
Sign In