PDPT指针位

时间:2014-01-18 21:51:26

标签: kernel

我正在尝试启动Apple的XNU内核(sources)的自定义版本。由于未处理的页面错误,引导程序正在死亡。我已将崩溃原因追溯到BootPDPT符号。 BootPDPT的工作是指向BootPDT符号中的页表条目。

问题是,正如我目前理解的x86 PDPT,低16位左右是标志,地址位于高16位。 (我检查了OSDev我的研究)。这是否意味着我需要移动该地址以便妥善解决?

我问这个是因为MMU无法找到页表条目。我认为这是由于价值转移导致价值0x00102000BootPDT的地址)被解释为0x00000102

如果我确实需要移位地址,我会将值移位多少位,如何在汇编程序中执行此操作而不会破坏低16位的标志?

0 个答案:

没有答案