Linux设备树OF API 中OF的含义

* 前言

读Linux内核源码或者开源GPL程序源码时,看到各种英文首字母缩写满天飞,英文单词首字母缩写是Unix/Linux C 编程的一个历史习惯,部分英文首字母缩写结合上下文可以找到理解含义,但有的英文缩写怎么也找不到是什么含义,来自哪里仿佛天外飞来就在哪里嘲笑你。自己的一个怪癖时,当找不到一个源码中的英文首字母缩写时就百般抓狂,痛苦万分,难受想哭,源码也读不下去了。不知道有没有其他的人有我一样的感受和习惯。

*缘起

在开发网关设备是调试Linux 声卡驱动模块,接触到了Linux 设备树(Device Tree Source)的概念,之后再驱动的源码中看到了内核设备树操作的 'struct of_device_id', 'of_find_node_by_type'等函数。

对这些函数的用途,使用方法,在CSDN博客上都已经有很好的资料介绍:

设备树常用的OF操作函数-CSDN博客

设备树种常用 OF 操作函数_设备树函数-CSDN博客

然后我就有了疑惑,在这些 OF 设备的 OF API的函数都用前传'of_'开头,但‘of’是什么的缩写哪, 'of'表示的是什么意思?

在中文网站和英文Stackflow都没有找到答案,痛苦,抓狂。

*答案

读Linux 设备树的概念介绍的时候,有博客提到过ARM Linux 设备树最初是从 IBM 移植过来的。我再'Linux-4.14/include/linux/*'目录下搜索下所有的'of_'开头的文件。

找到了一个文件'linux-4.14.x/include/linux/of.h',使用vi编辑器打开,在文件的开头接提到

“Defindations for talking to the Open Firmware PROM on Powe Macitosh and other computers”,文件的作者是IBM,开发时间是1995-2006年。

至此得到结论,设备树OF API系列函数中的'of'是' Open Firmware'的缩写,最初是IBM定义的一种结束概念,后面由于习惯在设备树中就都是用'of_'开头的缩写了。

*结果

再读Linux驱动设备树的源码心情就好多了。

更新:2013-10-16 

Open Firmware 是国际标准IEEE规范: IEEE 1275-1994

https://www.openfirmware.info/data/docs/of1275.pdf

Open Firmware

Open BIOS

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值