当前位置:首页>Linux>Linux设备树:那些被遗忘的'of_'往事

Linux设备树:那些被遗忘的'of_'往事

  • 2026-10-11 08:33:42
Linux设备树:那些被遗忘的'of_'往事

Linux内核中的设备树相关接口命名开头之of_的理解及其往事回看


1. 根源:Open Firmware固件标准

  • of_前缀直接来源于 Open Firmware。

  • 这是 Sun Microsystems 在1990年代创建的一套跨平台固件标准,后被采纳为 IEEE 1275 标准。

  • “Open”体现了其开放、跨平台、厂商中立的理念。

2. 关键遗产:设备树

  • Open Firmware 的一个核心创新是引入了设备树来描述硬件,解决了不同机器硬件配置差异的问题。

  • 核心思想:将硬件描述与操作系统内核解耦。

3. 进入Linux:PowerPC的桥梁

  • Open Firmware 是 PowerPC 架构的标配固件。

  • Linux内核的设备树支持,最初是为了适配 PowerPC 架构上的 Open Firmware 固件标准而引入的,函数名因此沿用了 of_前缀(代表 Open Firmware)。

4. 命运的转折:Linus的强制命令

  • 2011年左右,ARM 架构在Linux中兴起,但硬件描述混乱。

  • Linus Torvalds 强硬要求:ARM 平台必须采用设备树来统一硬件描述,否则代码不合并。

  • 这使得从PowerPC传承过来的、源自Open Firmware的设备树(及of_API)成为了Linux内核中所有非x86架构(尤其是ARM)描述硬件的标准方案。

  • Linus 合并代码发飙名场面(2011年)

                

5. 有趣的结果:名不副实,但约定俗成

  • 在今天的Linux中,of_系列函数操作的是“设备树”,与原始的Open Firmware固件本身已无直接关系。

  • 虽然很多人认为前缀改为 dt_更准确,但因历史惯性、兼容性成本和广泛的既有代码,of_这个历史名称被保留了下来,成为一个标志性的“技术活化石”。


    of_前缀是 Open Firmware 的历史印记,核心遗产“设备树”经由 PowerPC 架构引入 Linux,再因 Linus Torvalds 的强力推行 成为 ARM 等平台的标准,该名称作为一段成功历史的标签沿用至今。设备树也已成为嵌入式、服务器和RISC-V等非x86世界的基石技术。

最新文章

随机文章