Randomized allocations.. Of course, each time you run the program the allocations change. Note: Not showing the effects of many other changes, like shared library randomization, etc, etc Did you forget about the random stack gap? What moves? tiny malloc() allocations rearrange themselves large malloc() allocations and mmap() allocations Note the program still does not move... (PIE)