内核中宏的说明

HuangJie

在内核2.4.37,有在宏page.h是这样的:

struct page *mem_map;
struct page *page;

#define VALID_PAGE(page)  ((page - mem_map) < max_mapnr)

我知道mem_map是的数组struct pagepagestruct,那page - mem_map什么意思?

安舒曼·古普塔

它将计算mem_map数组中相应页面的索引,这意味着它在mem_map数组中是哪个页面数,可以说它是pfn或linux的页面帧数(Linux假定mem_map数组以0th pfn开头到最大pfn),添加到pfn的PHYS_PFN_OFFSET将为您提供内存映射中的实际物理页面框架。__page_to_pfn

max_mapnr是最大映射页面数或最大页面帧数的限制。set_max_mapnr

希望它能消除您的疑虑。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章