FreeDOS 镜像通过 balena 蚀刻机刻录到 USB 驱动器。
A仅限 UEFI桌面无法识别 FreeDOS USB 启动盘。在 BIOS 笔记本电脑上进行的 USB 启动测试表明传统启动成功。
问题
- 实现 UEFI 启动需要什么?
- 是否可以将分区表从 MSDOS 更改为 GPT?
更新
Dell 7010 台式机固件很旧,出于某种原因:只能进行 UEFI 启动。传统启动选项呈灰色。无法从 DVD/CD 启动
目标是使用 DOS 可执行文件更新固件在此链接处提供:
https://www.dell.com/support/home/en-us/drivers/DriversDetails?driverId=5M70H
答案1
FreeDOS 假定使用 BIOS,并且不适用于 UEFI
FreeDOS 维基页面wiki.freedos.org/wiki/index.php/UEFI告诉我们它不起作用:
UEFI 是“统一可扩展固件接口”的缩写。
请注意,许多新型(2010 年及以后)计算机使用 UEFI 启动,这与 BIOS 不兼容。FreeDOS 假定使用 BIOS,并且不适用于 UEFI。
许多主板制造商正在用 UEFI+GPT 取代 BIOS+MBR。UEFI 使用 GPT 表代替 MBR。UEFI 处理大扇区硬盘。硬盘制造商已经(2010 年及以后)推出了大扇区的硬盘,BIOS 无法处理这些硬盘(它们被硬编码为 512 字节扇区)。
当今(2021 年)几乎所有 UEFI 系统都可以在 BIOS 模式(别名 CSM 别名传统模式)下启动。但我们可以预期,未来许多 PC 计算机将配备仅在 UEFI 模式下启动的 UEFI/BIOS 系统。
运行 FreeDOS 的一个解决方法是将其安装在虚拟机中,并将此虚拟机设置为在 BIOS 模式别名 CSM 别名传统模式下启动。您可以使用 VirtualBox 来实现此目的。(但您不能用这种方式刷新计算机的 BIOS。)还有DOS盒,一个带有 DOS 的 x86 模拟器。
编辑1:
我发现这个链接可能会有帮助:
wiki.archlinux.org/index.php/Flashing_BIOS_from_Linux
从 Linux 刷新 BIOS
本文旨在提供有关在 Linux 下刷新系统 BIOS 的信息。大多数制造商提供 Windows 可执行文件或只能在 Windows 下运行的 BIOS 可执行文件。但是,有一些实用程序允许您在 Linux 下升级系统 BIOS。警告:刷新主板 BIOS 是一种危险的行为,可能会导致主板无法运行!虽然本文的作者已多次成功运行此过程,但您的情况可能会有所不同。小心!如果您的系统支持,您可能需要考虑更新微码。注意:
...
对于使用戴尔计算机的用户,戴尔建议 Linux 用户按照以下信息刷新 BIOS这里(简而言之,将 .EXE 放在 USB 记忆棒上并使用 F12 启动菜单访问固件的闪存实用程序)。
编辑2:
从 Windows PE 刷新 BIOS
可以运行 Windows PE也处于 UEFI 模式。标准程序是使用您自己或朋友的 Windows 10 系统在 USB 闪存盘或 CD/DVD 磁盘中创建 Windows PE 系统。
从 Windows PE 启动时,您可以刷新 BIOS。
根据此链接它可以出于非商业目的重新分发(因此可以使用在朋友的 Windows 系统中制作的 Windows PE)。
答案2
我们需要,(据我所知)为了支持这一点,实际上将是一个内置于 UEFI 引导加载程序中的 BIOS 实现。(即所有常见的 BIOS 中断 API)
因此,你通过 UEFI 启动 BIOS 代码(或至少是相当完整的 CSM),然后那启动 DOS。MBR 和 x64 启动可能仍然存在问题。一旦您跳转到 x64 模式,就很难降到 16 位模式,更不用说在那之后添加 32 位 DOS 扩展器了……而且(我相信)在 IA-64 中是不可能的。这就是 UEFI 旨在解决的部分问题,也是 EFI 被这解决一切问题除了x86/64 系统已经存在很长时间了。(它需要“通用”扩展才能从 EFI 转到 UEFI,然后才能在该 [坦率地说,PIFA] 平台上使用它)
但是,除了 IA64 之外,我认为可以使用虚拟化技术和异常处理程序来“模拟”问题指令。任何会出现这些问题的系统都会有太多的空闲资源,以至于额外的步骤(以及昂贵的上下文切换)对于操作系统开发人员来说比对于用户来说更令人头疼。
请记住,我们在各种 VM 解决方案中都内置了开源 BIOS 代码,包括 QEMU 和 VirtualBox。它们只是希望操作系统具有可用硬件的驱动程序,而您唯一可用的操作系统将是 UEFI 固件。
作为替代策略:-
您可以安装 Linux 系统并在 KVM 下运行 freeDOS,并使用 PCI 直通尽可能多的硬件。那应该使用当前的软件技术..?请记住,DOS 是真的适用于 ISA 系统,而不是 PCI 系统。
答案3
如果我没记错的话,Legacy Boot 通常呈灰色,因为“安全启动”已在另一个菜单页中启用。一旦禁用它,就可以使用 Legacy Boot 选项。
您还可以在以下 DELL FAQ 中找到此信息:
https://www.dell.com/support/kbdoc/en-bb/000133480/uefi-and-secure-boot-faqs