Что такое struct hstate в hugetlb.c? - PullRequest
2 голосов
/ 14 ноября 2011

В hugetlb_init_hstates () он имеет следующее:

for_each_hstate(h) { 
  if(h->order < MAX_ORDER) {
    hugetlb_hstate_alloc_pages(h);
  }
}

Означает ли каждое hstate одну огромную страницу?

1 Ответ

1 голос
/ 15 ноября 2011

Каждое состояние - это один огромный пул пул для определенного размера блока и определенного узла NUMA.Каждое hstate представлено одним каталогом /sys/devices/system/node/node<ID>/hugepages/hugepages-<size>/ в sysfs.На обычных настольных компьютерах обычно можно найти только одно глобальное hstate из 2 МБ страниц, а другое - для 1 ГБ страниц, причем последнее поддерживается не на всех архитектурах.

...