硬件启动成功,但产品未启动
在电路板能够通电后,固件开发工作便开始了
主板即使通过了POST测试,也可能与实际部署的产品不符。 它可能会在错误的启动设备处停止,在交流电恢复后仍无法启动,显示 现场操作人员绝不应更改的设置选项,报告错误的产品 标识,或者在应用软件停止响应时无法恢复。.
固件工程将这些产品需求转化为受控的 平台行为。其出发点是确切的主板版本、 当前固件构建版本、操作系统镜像、已连接的设备、功耗状态 要求、安全策略以及更新方式。.
产品级固件范围
在 BIOS 和 UEFI 固件中可以配置的内容
- 设置默认值
- 启动优先级、已启用的设备、虚拟化、存储模式、 串行设置、安全选项以及生产环境默认设置。.
- 设置访问权限
- 隐藏选定的菜单、限制更改、设置管理员访问权限, 并移除应保持由工厂控制的现场服务选项。.
- 启动策略
- NVMe、SATA、USB、PXE 或受支持的 HTTP 启动优先级、 备用顺序、启动延迟以及恢复条目条件。.
- 电力政策
- 交流断电恢复、RTC唤醒、软关机行为、支持的睡眠状态, 以及特定于主板的唤醒源。.
- 平台标识
- 制造商、产品名称、序列号信息、主板标识、 SMBIOS 字段、资产数据以及已批准的启动徽标更改。.
- 安全与更新
- 安全启动密钥所有权、TPM 安全风险、设置保护、 签名更新策略、恢复路径以及生产环境配置。.
功耗状态要求
明确定义系统启动、关机以及恢复交流供电时会发生什么
无人值守设备不能依赖技术人员在发生 电源事件后按下按键。必须根据实际的 UEFI 实现、主板电源逻辑、连接的存储设备、网络路径以及操作系统映像来定义启动和电源行为。.
| 活动 | 产品决策 | 固件控制 |
|---|---|---|
| 空调已恢复 | 保持关闭状态、恢复到先前状态,或自动开机。. | 为生产环境配置设置支持的AC-loss策略。. |
| 主驱动缺失 | 请停止操作,尝试使用另一台设备,进入恢复模式,或进行网络启动。. | 控制启动顺序、设备优先级、超时以及备用行为。. |
| RTC 时间表 | 如果板载支持RTC上电功能,则在指定时间唤醒。. | 使 RTC 配置、ACPI 唤醒行为和电源状态保持一致。. |
| 远程部署 | 在不进行本地操作的情况下启动部署或恢复映像。. | 控制网络启动功能、优先级及配置限制。. |
董事会层面的管控
固件只能控制电路板所提供的功能
嵌入式 Mini-ITX 设计中通常包含一些在 台式机 BIOS 中未出现的控制功能。这些功能的行为取决于所配备的 Super I/O、嵌入式 控制器、GPIO 扩展器、收发器、看门狗、风扇控制器或芯片组。.
硬件看门狗
使用实际的看门狗设备定义启用状态、支持的超时时间、重置操作、应用程序 交接以及重置后的行为。.
GPIO 和串行模式
定义支持的GPIO方向和状态,并支持可选的 RS-232/422/485模式,其中该板已包含所需的收发器路径。.
风扇与热管理
定义传感器来源、支持的 PWM 或电压控制、风扇故障 行为,以及平台公开的固件阈值。.
固件到操作系统数据
ACPI 和 SMBIOS 必须描述出厂时的硬件配置
固件提供标准化信息,操作系统和 管理软件利用这些信息进行配置、电源管理和硬件 清点。仅结构正确是不够的;数据必须与具体的 生产电路板和产品标识完全匹配。.
| 界面 | 固件提供什么 | 产品影响 |
|---|---|---|
| ACPI | 设备描述、电源资源、唤醒方法和平台表。. | 向操作系统报告的休眠、唤醒、热状态、按钮和设备行为。. |
| SMBIOS | 系统、主板、固件、处理器、内存、串行接口及OEM信息。. | 资产盘点、服务工具、设备管理和产品识别。. |
固件要求审查
有主板修订版和Golden OS镜像吗?
请提供主板版本、当前 BIOS 版本、操作系统、 启动顺序、AC 恢复行为、看门狗要求、安全 策略、设备列表以及现场更新限制。.
启动前信任
安全启动需要明确的密钥所有者和更新路径
生产环境下的安全启动不仅仅是一个启用/禁用设置。该项目 必须明确由谁控制平台密钥、哪些密钥交换密钥是可信的、 哪些内容会被纳入允许签名数据库、已撤销的镜像如何进入 dbx, 以及授权字段的更新如何保持可恢复性。.
当前的 UEFI 要求规定,安全启动平台密钥(Secure Boot Platform Key)的格式至少应为 RSA-2048,并且要求存储在 dbx 中的 UEFI 映像哈希值至少使用 SHA-256。这些只是最低的加密要求,并非完整 的产品安全策略。.
- PK 所有权
- 确定是由原始设备制造商(OEM)、客户还是其他授权所有者控制 用于确立安全启动所有权的平台密钥。.
- KEK、db 和 dbx
- 定义可信更新机构、允许的镜像、已撤销的签名, 以及生产环境中使用的配置方法。.
- TPM 2.0
- 在支持的情况下,公开并配置平台TPM,其所有权 和部署策略由最终系统定义。.
- 恢复
- 为更新失败或密钥变更的情况保留一条授权的恢复路径, 同时不绕过预期的信任策略。.
生产固件控制
发布二进制文件及其说明文档、默认设置和变更记录
只有在固件文件的身份和 兼容性得到控制的情况下,该文件才成为生产构建产物。发布的二进制文件必须与 主板版本、默认配置、安全配置、更新 方式以及变更原因保持关联。.
- 二元身份 记录固件版本、确切的板卡修订版、文件大小、 SHA-256 摘要以及发布日期。.
- 生产默认设置 将发货时的配置值与工程调试设置 以及本地技术人员所做的更改分开锁定。.
- 更改记录 确定已更改的功能、受影响的硬件或操作系统版本、 已知的限制条件以及所需的回归测试。.
- 更新与恢复 定义批准的固件刷写方法、版本策略、 断电防范措施、回滚规则以及恢复路径。.
参考规格
固件接口与参考规范
- UEFI 2.11
- 当前关于标准化操作系统前固件 环境、启动服务、运行时服务、变量和协议的 UEFI 规范。.
- ACPI 6.6
- 当前关于操作系统驱动的设备配置、 平台描述、电源管理及系统事件的ACPI规范。.
- SMBIOS 3.9.0
- DMTF关于标准化管理信息的规范, 该信息由系统固件提供,涉及平台及已安装的硬件。.
- TCG TPM 2.0 v185
- 2026年3月发布的TPM 2.0库规范,定义了TPM 2.0实现所采用的架构、 结构和命令。.
固件发布门
验证您计划发布的具体固件版本
固件工程的最终成果是定义好的二进制文件和生产配置。 随后,工程验证阶段会在目标板上运行该确切版本,并配合 预期的操作系统镜像、外设、电源状态场景、安全配置、 更新方式以及恢复路径。.
常见问题
关于 BIOS 和固件工程的问题
BIOS 设置可以自定义吗?
是的,前提是固件支持这些功能。典型的更改包括启动 优先级、设备启用、电源行为、串行设置、 虚拟化、安全选项以及设置访问权限。.
BIOS 能自动开机吗?
是的,在受支持的开发板上可以。可以通过固件配置交流电源中断恢复功能, 使其在输入电源恢复后开启、保持关闭,或恢复到之前的状态。.
监视程序的设置可以自定义吗?
是的,当电路板配备了兼容的硬件看门狗时。 可用的超时范围和复位操作取决于所安装的控制器以及固件的实现方式。.
安全启动密钥可以自定义吗?
是的,在受支持的固件上。PK、KEK、db 和 dbx 的配置可以 根据 OEM 或客户对密钥的所有权以及所需的更新策略进行定义。.
BIOS 更新是如何控制的?
在将更新发布到生产环境之前,请使用版本绑定的二进制文件、经过验证的摘要、经批准的刷写方法、 变更记录、兼容性规则以及已定义的恢复路径。.
