![Linux内核:源树、树内、树外的含义](https://linux22.com/image/66618/Linux%E5%86%85%E6%A0%B8%EF%BC%9A%E6%BA%90%E6%A0%91%E3%80%81%E6%A0%91%E5%86%85%E3%80%81%E6%A0%91%E5%A4%96%E7%9A%84%E5%90%AB%E4%B9%89.png)
术语“树内”和“树外”到底是什么意思?另外,“源代码树”是特指从 kernel.org 发布/维护的官方内核,还是一个更通用的术语,可以指代任何(修改后的)Linux 内核源代码?
答案1
“源树”不是特定于内核源代码开发的术语,因此它必须是一个更通用的术语,并且其对于内核源代码的含义取决于上下文。
我在 Linux 内核源代码开发之外没有遇到过“树内”和“树外”,然后仅用于使用模块。所有模块都是从“树外”开发开始的,可以使用源树的上下文进行编译。一旦模块被接受包含,它就成为树内模块。不过,人工智能还没有找到这两个术语的官方定义,也许这从来没有必要,因为那些使用模块的人很清楚这意味着什么。
例如,虽然 Reiserfs 模块仍然是树外模块,但我为 SuSE 生成了 RPM 包,但一旦它成为树内模块,就不再需要它了。