gpt4 book ai didi

c - 如何将物理地址转换为内核模块(x86-64)内的内核页面结构?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:04:27 27 4
gpt4 key购买 nike

如何将物理地址转换为内核模块中的内核页面结构? (仅适用于 x86-64 架构)。

以下是我目前所拥有的:

void *kernel_logical_address = phys_to_virt(physical_address);

现在,如何为这个 kernel_logical_address 获取 struct page

为什么我需要它?

在我正在处理的内核模块中,它维护着一个空闲页面列表

 struct page *pages

我想将这个特殊页面(指向 physical_address 的那个)添加到这个特定列表中。我该怎么做呢?

最佳答案

使用 pfn_to_page(pfn_num) 宏。 Pfn num == phys_addr >> 12

关于c - 如何将物理地址转换为内核模块(x86-64)内的内核页面结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46745788/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com