经常使用hugetlbfs的朋友肯定会注意到/sys/kernel/mm/hugepages/hugepages-2048kB下有个文件叫做resv_hugepages,一直不太理解这个文件的含义,今天总算是弄明白了,特此记录一下。
但我们mmap hugetlbfs的文件时,会传入一个size,代表我们想mmap的内存大小,hugetlbfs在我们mmap的时候,会进行大页内存剩余量的判断,如果剩余的物理大页不够的话是会拒绝mmap的,而如果剩余的物理大页足够的话,则会顺利完成mmap,并且会把mmap传入的size加到resv_hugepages中,表示有这么多的物理大页已经被预定了的意思。那么这个值什么时候会被减去呢?一般是进行实际物理内存分配的时候,也就是hugetlbfs处理缺页中断的流程中进行减去的动作,因为这个时候物理页已经从预留的状态转换成分配的状态了,所以分配流程会将resv_hugepages做一个减法。
resv_hugepages是什么
最新推荐文章于 2025-05-01 19:20:50 发布