固件开发与计算机架构深度解析
1. 固件安全与架构发展
在当今的技术环境中,安全的定义已经从早期的嵌入式系统发生了显著的演变。过去,制造商的固件实现通常被认为是可信赖的,直接运行在目标硬件上。然而,现代设备更多地依赖于硬件芯片解决方案,事实证明,这种方式在安全性上优于基于固件的安全措施。
随着OpenTitan项目的推出,这一行业首个开源硅信任根(RoT),未来的平台有望实现更加透明、可信和安全的设计。OpenTitan的整个开发模式颠覆了以往“代码越隐蔽越好”的平台安全观念,转而欢迎更多人审查代码、评估并参与开发。
在固件架构方面,开源固件开发在现代固件发展时代尚未完全成为主流。处理器供应商采用的设计和开发限制是现代嵌入式设备采用开源固件解决方案的主要障碍之一。不过,不同的硅供应商有兴趣在受限的硅平台上支持平台开发的开放性业务目标。
混合固件架构是一种独特的开发方式,它依赖于闭源固件和开源固件两个支柱。硅供应商采用基于二进制的平台初始化模型,以保持硅初始化的闭源性质。通常,基于二进制的平台初始化通过API/ABI实现,可轻松与任何标准引导固件集成以完成初始化。例如,在混合固件架构中使用的闭源固件有AMD AGESA(AMD通用封装软件架构)和英特尔FSP(固件支持包),在ARM可信固件引导加载器阶段(如BL1和BL3x)也使用闭源二进制文件。
这种二进制平台初始化模型对嵌入式市场来说是一种变相的福音,现在使用开源固件主动引导固件进行固件开发的替代方法已成为现实。
2. 现代系统编程语言
编程语言的发展是固件技术演变的关键催化剂之一。复杂的编程语言需要特殊知识,不利于更广泛的社区采用。固件开发中编
超级会员免费看
订阅专栏 解锁全文
39

被折叠的 条评论
为什么被折叠?



