如何获取具有页面结构的页面内容?
How can I get contents of page with page structure?
我目前正在寻找有关页面缓存的内核源代码。
我得到了一个 struct page (include/linux/mm_type.h)
,我想读取并保存该页面描述符指向的真实内容。
我找到了address_space_operations
,它似乎对我有帮助,但我不知道它们是如何工作的以及如何使用。另外,aops->readpage
得到 structure file
作为我没有的参数。
我想做的只是打印页面缓存的内容(使用 printk)。
不确定但可能更安全的方法是使用 linux/highmem.h
中的 kmap()
如果页面已经映射,它将 return 关联虚拟地址,否则将为给定的创建映射页面和 return 您可以从模块中取消引用的相同地址。
我目前正在寻找有关页面缓存的内核源代码。
我得到了一个 struct page (include/linux/mm_type.h)
,我想读取并保存该页面描述符指向的真实内容。
我找到了address_space_operations
,它似乎对我有帮助,但我不知道它们是如何工作的以及如何使用。另外,aops->readpage
得到 structure file
作为我没有的参数。
我想做的只是打印页面缓存的内容(使用 printk)。
不确定但可能更安全的方法是使用 linux/highmem.h
中的 kmap()
如果页面已经映射,它将 return 关联虚拟地址,否则将为给定的创建映射页面和 return 您可以从模块中取消引用的相同地址。