Linux内核开发与实时系统详解
1. 开源社区与内核贡献
内核如同其他开源项目一样,欢迎用户贡献代码。从地理意义上讲,内核项目高度分散,全球各地的用户会定期做出贡献。开发者对代码进行更改后,提交包含这些更改的补丁,以便将其纳入主线内核项目。这就引出了几个问题:
- 如何创建补丁?
- 补丁应发送给谁?
- 提交补丁后会发生什么?
大多数用户不会提交内核补丁,就像大多数维基百科读者不会更改内容一样,但了解这个过程仍然很有价值,也有助于理解如何应用补丁。
2. 内核开发过程
内核项目采用滚动集成过程,即签入项目的软件应能正常工作且无错误构建。对于像Linux这样的大型项目,这不是一个人能完成的。因此,内核中的每个主要子系统都有一个维护者,负责审查补丁。子系统维护者必须确保子系统正常工作、符合内核代码标准并能正确构建。可以在Linux内核根目录的 MAINTAINERS 文件中找到维护者的规范列表。
维护者会准备好补丁队列,直到顶级维护者Linus Torvalds向他们发送电子邮件请求更改,打开所谓的合并窗口。维护者将排队的更改发送给Linus,他将这些更改与上一版本的源代码合并。这个过程会持续数周,直到合并窗口关闭。关闭后,只接受修复新接受代码中的缺陷或其他主要缺陷的更改。这些Linux内核版本称为rc<序列号>,序列号从1开始,每次发布递增。大约每周会有一次新的补丁发布。
当Linus认为代码足够稳定(即回归测试通过且内核维护者达成一致)时,他会发布一个新的内核版本,然后循环再次开始。
超级会员免费看
订阅专栏 解锁全文
1637

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



