我对使用 LinuxBoot 作为 Coreboot 的有效负载的用例感到困惑。
我了解到LinuxBoot 可以完全替代UEFI 的DXE 和BDS 阶段,然后可以直接加载 bootstrap (比如GRUB)甚至Linux 内核。
现在,我还了解到 LinuxBoot 可以用作 Coreboot 的有效负载。
如果 LinuxBoot 可以做从平台初始化到加载内核的所有事情,那为什么有人还要把 Coreboot 放在这个序列中呢?简单地说,为什么存在使用 LinuxBoot 作为 Coreboot 的有效载荷的用例? Coreboot 将扮演什么角色?
最佳答案
UEFI 由多个阶段组成:SEC、PEI 和 DXE。 LinuxBoot 取代了 DXE 阶段,Coreboot 取代了 SEC 和 PEI 阶段。
Coreboot 负责 Linux 无法完成的平台初始化,例如 DRAM 初始化(也称为“训练”)和 ACPI 表生成。 Linux 然后作为 Coreboot 有效负载工作,它执行诸如 PCI 设备枚举之类的事情,并加载引导加载程序或可以 kexec()
进入另一个 Linux 内核。
关于linux-kernel - LinuxBoot 在固件阶段与 Coreboot 有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53681838/