0


pkmap_page_table 有一个内核启动时kmap 的页表指针。
例如,PKMAP_BASE 为 0xFFE00000,FIXADDR_START 为 0xFFF00000,如果内核尝试使用高端内存,则 TTB0 的 PTE 应设置为 0xFFE00000 ~ 0xFFF00000 作为虚拟地址。
那么pkmap_page_table的PTE是如何用来制作地图的呢?
以及如何修改TTB0的PTE与pkmap_page_table的PTE相同?

谢谢你。

4

1 回答 1

0

我实际上不确定您会出现什么问题,但在“Understading the Linux Kernel”一书中有一些代码 sinnpet 可用。

第 309 页上;最后几行;“一旦进程被唤醒,该函数通过调用检查另一个进程是否已映射页面page_address();如果没有其他进程映射该页面,则内部循环重新启动。”

于 2013-04-09T05:26:25.200 回答