2*1024*1024 = 2097152 = 0x200000
void *ptr = mmap(NULL, 2*1024*1024, PROT_READ | PROT_WRITE,
MAP_ANONYMOUS | MAP_PRIVATE, -1, 0)
0x7fffd2a00000 ==> address of ptr(multiple calling through a loop)
0x7fffd2800000
0x7fffd2600000
0x7fffd2400000
0x7fffd2200000
void *ptr = mmap(NULL, 2*1024*1024, PROT_READ | PROT_WRITE,
MAP_ANONYMOUS | MAP_PRIVATE | MAP_HUGETLB, -1, 0)
similar results
我调用带有或不带有MAP_HUGETLB的mmap,返回的地址与2MB地址空间对齐。
MAP_HUGETLB的用途是什么?
为什么无论是否有MAP_HUGETLB标志,mmap总是返回对齐的2MB地址空间?
谢谢