利用BIOS定制实现嵌入式产品的差异化
增强的嵌入式固件应用能力
嵌入式系统开发商正日益寻求通过增加更多的特性,来使产品有别于竞争产品的方法。固件是增强这种特性(特别是那些需要单独运行平台OS的特性)的理想地方,其中一个例子就是高可用性监控与引导安全性。
如果自助式信息服务终端采用独立于OS运行的固件,它便能以许多方式检测出故障情况,然后采取记录故障、通过网络发送电子邮件或者重启等纠正措施。尽管这是一种可见性故障,但无头(headless)设备也同样容易受到攻击。
固件是实现这种监控的理想地方,该监控独立于OS并以系统管理模式(SMM,x86处理器架构的第四种模式)与OS并行运行。例如,Firmbase SMM操作环境具有自己的32位SMM操作环境,以便运行用Windows工具构建的可移植可执行程序。Firmbase应用程序驻留在ROM中的BIOS旁边,在这里它们独立于OS运行,即使OS已经崩溃或丢失。这使BIOS成为对系统故障进行检测和响应的高可用性监控解决方案的最佳实现地方。
某些情况下,固件可帮助解决终端用户篡改设备的问题。投票机、游戏机,甚至机顶盒等都需要一系列建立在应用层软件、固件本身以及平台之间的信任。如果没有这种信任,用户就可以在硬盘驱动器上修改关键文件,或者用另一块主板来扰乱轮询结果或欺骗主机。通过与运行在Windows或Linux OS下的应用程序、以及运行在SMM并独立于OS的固件建立可重复性的加密握手,无论是应用程序还是固件都能够禁用系统,以免系统进行误操作。
过去,将硬件与应用程序绑在一起是应用程序员的工作。如今,无论是扩展系统的系统管理接口(SMI)处理程序来执行握手,还是授权在固件层具有日志、远程管理以及OEM级配置的引导时间安全应用程序,都变得更加安全和简单。
还可通过另外一些方式使用BIOS,以使产品在固件级上具有差异化并获得竞争优势。在解决BIOS的功能配置、用户界面、快速引导以及增加专用功能等问题后,还可考虑其它许多方面。例如,可用ROM、RAM、闪存或USB存储器棒等固态媒介来代替硬盘;内置诊断可集成到BIOS中以助于实现自动制造;内置调试程序可加快电路板的推出过程;此外,专用加载程序(比如那些用于Windows CE与EFI的加载程序)还可为未来技术改进提供内置路线图。
由于嵌入式系统之间存在广泛的应用差异性,所以没有一个单一的BIOS能对它们全部适用或者有效。为能直接开发并高效地、富有成本效益地配置嵌入式设备,用开发商定制硬件和软件应用的相同方式来定制固件的能力还有待进一步提高。
作者:Steve Jones
Nat Hillary
通用软件公司
BIOS 相关文章:
- 计算机主板BIOS分析(10-03)
- AMD Ryzen购买和装机攻略,收藏起来以后用(07-28)