2

我正在考虑开发一个简单的(开始)UEFI 引导加载程序来加载 ELF 映像,并且想知道是否有人有一个很好的入口点进入可能任何现有的项目,或者我可以用来开始使用的示例。

此外,我想知道是否有人在让虚拟盒运行 EFI 应用程序方面有任何经验。我已经设置了一个带有 EFI 主板的 VM,但可以创建一个 EFI 系统分区以供其加载(不使用操作系统),我所能实现的只是 UEFI 命令行。

4

3 回答 3

7

您可以尝试查看GRUBelilo源代码。这些也很好,因为它们支持加载 ELF 图像。您可能还会查看EDK2,那里有很多好的代码,并且很容易用它构建 EFI 可执行映像。

在引用 UEFI 时,我也喜欢使用Phoenix 的 wiki。我发现引导服务条目特别有用。

希望这至少有一点帮助!

于 2013-11-07T19:10:18.443 回答
1

我最近也对引导加载程序感兴趣。我还是这个领域的新手,但我发现了这个有趣的分步教程来编写“Hello World”引导加载程序。希望它能为您或其他有相同问题的人提供开发引导加载程序的起点。

于 2016-12-03T23:32:21.673 回答
0

可以通过 grub-mkimage 在 UEFI 上安装 GRUB。众所周知,ELF 二进制文件同样被伪装成符合 UEFI 的 PE32+ 要求。如果某些 C 开发人员将按照https://www.kernel.org/doc/Documentation/efi-stub.txt所做的那样重构代码,然后将 mkimage 的代码概括为一个单独的工具,以便在没有 PE32+ 内核加载程序的情况下使用多引导程序每个操作系统...

想象一下

ld -b input-format -o <output>.efi --oformat=output-format objfile ...
于 2015-10-25T05:29:50.230 回答