TianoCore 的 DUET 可以在 PC 上做什么?

Mel*_*lab 2 uefi

我最近对 ​​DUET 感兴趣,这是英特尔为开发人员提供的 UEFI 模拟器。我读到它可以安装到硬盘上,但这有什么作用呢?某种启动监视器?虚拟机?我可以让 BIOS 计算机像 EFI 计算机一样运行吗?它可以用于基于软件的安全启动吗?

Rod*_*ith 5

您可以认为 DUET 是一种引导加载程序,可在 BIOS 模式计算机上加载 EFI 环境。运行时,DUET 实质上将一台基于 BIOS 的计算机变成了一台支持 EFI 的计算机。它不是虚拟机。我上次检查时,DUET 不包括安全启动支持,但这可能随着最近的构建而改变。(即使它确实包含安全启动支持,它也不会那么有效,因为 DUET 仍然依赖于基本不安全的 BIOS 启动路径。)它确实让您运行基于 EFI 的启动加载程序和其他 EFI 工具, 尽管。顾名思义,它最初是为开发人员设计的,但我想大多数开发人员现在都拥有真正的 EFI 硬件。如今,它最实际的应用可能是为那些想要从大于 2TiB 的硬盘启动 Windows 的基于 BIOS 的计算机的人。此类磁盘需要使用 GUID 分区表 (GPT),Windows 使用 EFI 时只能从 GPT 磁盘启动。DUET 实现了这一点。OTOH,设置起来也很痛苦,所以只有当你有更多的时间和/或专业知识而不是金钱时,你才应该考虑它。如果您有 1 或 200 美元可用于台式机系统(或比笔记本电脑多一点),最好将主板(或整台计算机)更换为具有 EFI 功能的型号。

DUET 的安装和使用过程过于复杂,无法在此描述;但我已经写了一个关于这个主题的网页:

http://www.rodsbooks.com/bios2uefi/index.html

请注意,DUET 非常挑剔。根据我的经验,它在基于 Intel 的计算机上效果最佳。我已经在至少三台基于 AMD 的计算机上对其进行了测试,其中两台完全失败,第三台运行不佳。您需要另一个基于 BIOS 的引导加载程序(例如 GRUB 或 SYSLINUX)才能启动 DUET。不过,我的网页描述了如何设置它。

  • DUET 的一部分,就像任何 EFI 实现的一部分一样,确实保持运行以向操作系统提供运行时服务。在这方面,它确实具有一些类似于管理程序的特性,但它并不是真正的虚拟机,因为它不充当任何硬件访问的中间人。AFAIK,一旦操作系统获得控制权,DUET 所做的一切就是提供 EFI 运行时服务,这些服务可以执行对 NVRAM 的中介访问(在 DUET 的情况下,它实际上是一个磁盘文件,甚至不能很好地工作)。 (2认同)