问题

问题

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

相关内容