这篇文章给大家分享的是有关2017版linux内核开发报告的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Linux 项目的现状本次的报告,所统计的数据是从内核的 4.7 算起,到 4.13 止,先看看L
这篇文章给大家分享的是有关2017版linux内核开发报告的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
Linux 项目的现状
本次的报告,所统计的数据是从内核的 4.7 算起,到 4.13 止,先看看Linux都增加了那些新的特性吧:
透明 Huge 页现在可以支持基于文件的页,以及可编程的数据的页,可以更加高效的利用内存。
内核的文档系统切换到了新的工具链,即 Sphinx:为了更好的组织和加强内核的文档。
内核的核心计时机制,被替代为新的更加高效。
网络栈中的“易捷版数据路径”机制的实现,可以处理用户 BPF 程序负载的高速网络包。
BBR 拥塞控制算法改善了多种设置中的网络性能。
……
当你的代码是运行在数十亿台设备上的时候,感觉真的不一般。 ——Jens Axboe(Software Engineer, Facebook)
都有谁为 Linux 做的改变?
自从进入 git 时代(即 2005 年 2.6.11 发布之后),共有 15,637 名开发者为 Linux 内核的开发做了贡献,这些开发者至少是来自 1,513 家公司。
尽管那些独立的开发者看起来是很多,但其实是少部分人做了大量的工作,在几乎所有的开发周期中,大约有 1/3 的开发者,每人仅贡献一个补丁。自 2.6.11 版本之后,贡献最多的前十位工程师,他们加起来的贡献有 45,338 次改变,大概占了总数的 7.1%,前 30 名加起来的贡献是 16%。他们的名字是:
Linux 仍然是存在这个人英雄主义色彩的,是的如此庞大的系统,必须是群体智慧的产物。但是精英们、英雄们付出了他们智慧与努力,理应得到荣耀。
我一直以来都喜欢底层的软件打交道,因为他们靠近硬件的边界。 ——Kees Cook(Software Engineer, 来自Google)
都有那些公司为 Linux 做了赞助?
没错,你能想到的 IT 公司基本都是 Linux 的贡献者,他们雇佣开发者专门来对内核进行开发,有芯片厂商如 Intel、AMD、ARM、TI 等,也有互联网巨头 Google、Facebook,是谁并不重要。
正如有的评论家称,无论哪家公司,若是去说开源对于他们的发展相比于他们的贡献都是不成比例的,无论怎么反馈都是他们有利。商业公司考虑的因素更多,但是不能失去内核,内核的开发无论其处于何种目的。都是应该的。拿 Intel 来说吧,即使 Intel 在过去的一年贡献率达到 13%,但相比于它的营收,这点都是微不足道的。
开源固然感激商业公司的赞助,但是反过来,商业公司更应该感激开源能够让他们有机会赞助,并赚取利润。
新的开发者
像很多的社区一样,或者更大范围的道理,很多人是浅尝辄止,从 kernel 的历史来看,在每个版本都会有新人提交那么一个或几个 patch,然后绝大多数人都离开了,只有少部分人留下来。目前社区的贡献者人数是:4,319,而其中过去一年中的新人有:1,670 位。另外,新人们所提交的 patch 均是设备驱动,按照数量排名依次是:网络驱动、文档、显卡驱动、USB 驱动、和声音子系统。
这样我们可以有一个直观的推论,那就是能上手内核开发的,并没有传说中的那么难,更难的在于坚持下来一直去做。当然,这一点,有商业公司的支撑会好很多。
谁在做着 Review 代码的工作?
到现在你是不是还没有看到 Linus Torvalds 的名字?
Linux 作为***的开源项目之一,不是随便的无章法的,每一个补丁并非是直接就能进入主干的,而是要经过很多个子系统的。而每个子系统都是有对应的维护人员的,这些维护人员要审核人们的提交。每个补丁经过这些维护者审核之后,都会加上 “Signed-off-by”,这意味着这个补丁可以进入内核。分析内核代码时,关注 “Signed-off-by”,你就能明白都有谁是内核的守护者。
没错,Linus Torvalds 现在就是其中之一,由他本人 “Signed-off-by” 的补丁在过去的一年中有 207,占总共的 0.3%。
Linux 在 26 年以来所学到的
很少有开发项目能够拥有这么久的历史,大多数的项目在经历了如此长的历史之后,都会有“稳定状态”这样感觉,会有日薄西山的感觉。但是 Linux 内核没有这样,26 年了,它依然保持活力和旺盛的生命力。是的,有很多的学术研究 Linux 社区的成功之处,但是在我们彻底的将它搞明白之前,我们先总结下我们的教训:
短的开发周期真的很重要。
流程的可扩展性需要一个分布式的、层级的开发模式
工具很关键
强烈的共识导向模式非常重要。要作为一般规则。
内核还有一个相关的因素是“无回归”规则。
企业的参与在过程中蛮重要。
项目内部不应有边界。
以上这 7 点,对于任何的大型开源都有重要的参考价值。26 年,内核用实际行动告诉我们,持续、合作的努力能带来巨大的共享资源,这本身没有任何一家单独的公司可以做得到。
感谢各位的阅读!关于“2017版Linux内核开发报告的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
--结束END--
本文标题: 2017版Linux内核开发报告的示例分析
本文链接: https://lsjlt.com/news/283630.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0