首页 > 解决方案 > EDK 2 中 UEFI 引导服务的实际代码在哪里,或者在 EDK 2 源代码中填充系统表的位置在哪里

问题描述

我正在研究虚拟化层,特别是虚拟化 UEFI 引导服务,以便即使在调用 ExitBootService() 并将控制权传递给 GPOS 内核(无论是 Windows/Linux)之后,也可以使用这些服务。我无法在EDK 2 源代码中找到启动服务的实际代码。引导服务被实现为函数指针。我找不到这些函数指针指向实际函数的位置,例如 AllocatePage() 引导服务。EDK 2 源代码中 AllocatePage() 引导服务的声明在哪里。或者在 EDK 2 源系统表和引导服务结构中填充的其他位置。我也有兴趣了解 XEN 如何处理这个特殊问题。任何 OVMF 来源也值得赞赏。非常感谢

标签: xenuefignu-efi

解决方案


BootServices 的大多数默认实现都在DxeCore中(因为它们需要对所有其他 DXE 阶段组件可用)。表本身在此处填充。


推荐阅读