it mmap und madvise für große Seit

Ich möchte Speicher auf den von einem Linux-Computer verwendeten Riesen-Seiten zuweisen. Ich sehe, dass es zwei Möglichkeiten gibt, dies mit @ zu tummap undmadvise.

Das heißt, mit derMAP_HUGETLB Flagge mit demmmap Anruf

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

Und dieMADV_HUGEPAGE Flagge mit demmadvise Anruf

madvise(base_ptr_, memory_size_, MADV_HUGEPAGE);

Kann jemand den Unterschied zwischen den beiden erklären?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage