Linux 如何获取具有页面结构的页面内容?

Linux 如何获取具有页面结构的页面内容?,linux,kernel,Linux,Kernel,我目前正在寻找有关页面缓存的内核源代码 我得到了一个结构页面(include/linux/mm_type.h),我想读取并保存描述符指向的页面的真实内容 我发现了address\u space\u操作,它似乎可以帮助我,但我不知道它们如何工作以及如何使用。另外,aops->readpagegetstructure file作为我没有的参数 我想做的是打印页面缓存的内容(使用printk)。不确定,但可能更安全的方法是使用linux/highmem.h中的kmap(),如果页面已经映射,它将返回相

我目前正在寻找有关页面缓存的内核源代码

我得到了一个
结构页面(include/linux/mm_type.h)
,我想读取并保存描述符指向的页面的真实内容

我发现了
address\u space\u操作
,它似乎可以帮助我,但我不知道它们如何工作以及如何使用。另外,
aops->readpage
get
structure file
作为我没有的参数


我想做的是打印页面缓存的内容(使用printk)。

不确定,但可能更安全的方法是使用
linux/highmem.h
中的
kmap()
,如果页面已经映射,它将返回相关的虚拟地址,否则将为给定页面创建映射并返回地址,您可以从模块中取消引用该页面。

谢谢。你帮了我很多。从页面结构访问页面数据的关键函数是kmap()。很高兴知道。如果您是为了个人学习而进行探索,我想推荐本课程材料: