我现在正在编译linux kernel 2.6,发现总共有1000多个模块。一个模块是如何被批准包含在 linux 内核中的?
补丁或 git pull 请求与评论请求一起提交。这有时在内核邮件列表中完成,但经常在与补丁主题相关的其他列表中完成。有时甚至在编写任何代码之前就提出了关于提议模块的讨论。人们会问为什么补丁是必要的,陈述他们的反对意见,并指出可以进行的改进。这是一个迭代过程。当作者感到舒服时,他在称为合并窗口的时间内将其提交到 Linux 内核邮件列表。
正式发布的那一刻,下一个版本的合并窗口开始打开。作为合并窗口关闭的一部分,补丁要么被接受,要么不被接受。如果补丁被接受,则唯一允许对该部分代码进行的进一步更改是错误修复。同样作为合并窗口关闭的一部分,发布了内核的新 RC(候选发布)版本。几乎总是,人们会遇到补丁问题,需要修复错误或恢复补丁。