从 BIOS/EFI 进行网络启动 (PXE)

从 BIOS/EFI 进行网络启动 (PXE)

这两种加载模式有什么区别?

  1. 来自 BIOS 的 PXE。
  2. 来自 EFI 的 PXE。

我知道固件将控制权传递给存储在 NIC ROM 中的 NIC 程序。该程序通过 BOOTP 提供 IP 地址,并至少提供一条到加载程序的路径。该加载程序通过 TFTP 加载到 NIC 的 RAM 中并开始执行。然后加载程序(syslinux、grub ...)通过 TFTP/HTTP/FTP 将内核和 initrd 加载到主机 RAM 中,并将控制权传递给内核。

为什么我必须有两个不同的加载程序版本(BIOS 版本和 EFI 版本)?

答案1

我认为网卡固件检索到的加载程序是由网卡控制器执行的,但这是错误的。该加载程序由 BIOS 或 EFI 执行。 BIOS是16位环境,EFI是32/64位环境。因此,加载器必须与执行环境兼容。感谢您的链接 管理 Linux 的 EFI 引导加载程序

相关内容