Использование mmap и madvise для огромных страниц

Я хочу выделить память на огромных страницах, используемых машиной Linux. Я вижу, что есть два способа сделать это, используяmmap а такжеmadvise.

То есть используяMAP_HUGETLB флаг сmmap вызов -

base_ptr_ = mmap(NULL, memory_size_, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS | MAP_HUGETLB, -1, 0);

ИMADV_HUGEPAGE флаг сmadvise вызов -

madvise(base_ptr_, memory_size_, MADV_HUGEPAGE);

Может ли кто-нибудь объяснить разницу между ними?

Ответы на вопрос(1)

Ваш ответ на вопрос