为什么操作系统(通常)无法访问 BIOS 设置?

为什么操作系统(通常)无法访问 BIOS 设置?

主板在启动后不提供 CPU 和 BIOS 芯片之间的总线吗?如果是,为什么?

如果 CPU 可以控制风扇速度,我不明白为什么它不能控制 BIOS 配置。

答案1

为什么操作系统(通常)无法访问 BIOS 设置?

上述问题无法回答,因为操作系统访问 BIOS。

我将在下面回答可能被问到的问题。


操作系统如何访问 BIOS 设置?

在 Windows 和 Unix 上,操作系统能够读取 BIOS。

视窗

示例(使用wmic):

F:\test>wmic bios /?

BIOS - Basic input/output services (BIOS) management.

HINT: BNF for Alias usage.
(<alias> [WMIObject] | <alias> [<path where>] | [<alias>] <path where>) [<verb clause>].

USAGE:

BIOS ASSOC [<format specifier>]
BIOS CREATE <assign list>
BIOS DELETE
BIOS GET [<property list>] [<get switches>]
BIOS LIST [<list format>] [<list switches>]


F:\test>wmic bios list brief
Manufacturer              Name                                        SerialNumber      SMBIOSBIOSVersion  Version
American Megatrends Inc.  BIOS Date: 09/05/11 11:20:58 Ver: 04.06.03  27546064-5001600  R1190V3            Sony - 20110905

Windows 也可以写入 BIOS(一些主板制造商提供基于 Windows 的 BIOS 更新程序。)

例如如何在需要时通过 Windows 或在 BIOS 中刷新 BIOS

Unix

Unix 有类似的命令。

  • 生物解码解析 BIOS 内存并打印有关所有结构的信息。

  • 您可以使用包含嵌入式 ASM(汇编代码)的 C 应用程序从根用户进行实时 BIOS 调用。

来源如何将 BIOS 数据转储到文件


进一步阅读

答案2

他们可以,但没有太多的标准化接口到那里的设置,特别是如果你指的是正确的“BIOS”(即预 UEFI)。

BIOS 的某些部分由 BIOS 和在其上运行的操作系统之间的软件契约控制。很久以前,BIOS 例程用于各种日常任务,如读写磁盘、在屏幕上显示内容以及打印到连接的打印机,因此得名“基本输入/输出系统”。如果 BIOS 与硬件匹配,操作系统就可以支持不同的硬件变体,而不必为所有这些事情制定自己的例程。但随着硬件和操作系统变得越来越复杂,超出了有限的 BIOS 功能,操作系统开始为几乎所有东西提供自己的驱动程序,仅依靠 BIOS 进行启动、电源管理和检索系统配置信息。

但 BIOS 也变得越来越复杂,获得了各种不受 OS-BIOS 界面控制的设置和功能,甚至 BIOS 中的内容也只指定结果,而不是执行。这意味着每个 BIOS 制造商都可以自由地做他们想做的事情,只要操作系统继续运行,他们就可以随时更改内容,而且他们不必告诉任何人都可以知道任何细节。访问 BIOS 存储的数据是小菜一碟,但如果您有一个实用程序可以理解数据,或者可以以 BIOS 真正理解的方式修改数据,那么它可能是由 BIOS 制造商自己制作的,或者是逆向工程的结果。

相关内容