技术开发 频道

果然够大!Linux内核 4.9终正式发布!

  【IT168 评论】2015年4月12日,Linux内核由3.19升级至4.0,当时的Linus Torvalds表示他希望避免出现2.6.39类似的命名错误,因为该编号在用户的快速浏览中可能会引发误解。所以,在取得社区的支持之后,他便将下一版命名为4.0,而4.0在功能上却并没有什么大的改进。

果然够大!Linux内核 4.9终正式发布!

  2016年12月12日,Linus Torvalds发布了Linux内核4.9,4.9带给人的惊喜远比4.0要多得多。这是一个看起来很笨重的版本,估计也是迄今为止开发的最大的发布版本,至少从提交数上来说是这样的,其三分之二的代码由驱动程序组成。

  现在看来,Gul存储库中的Linux内核4.9代码包含56,233个文件,由22,345,566行代码组成,大部分来自于大约16,000个开发者的超过635,539个提交,其中的2230万行代码来自于纯线程和非核心内核代码,如各种树形工具。

  除了提交的数量比较大,Linux内核4.9给开发人员带来了AMD GPU寄存器定义文件,以及一个较短的Linux合并窗口的截止期,以避免出现4.8时发生的在最后一刻提交的PR导致内核错误。同时,4.10内核的合并窗口也同时打开了。

  在Linux内核邮件列表上,Torvalds写道:“如果你看看改变的行数,我们过去有更大的版本出现,但它们往往是由于特定的问题而产生的(例如,V4.2是因为AMD GPU寄存器定义文件而增加了大量变更行数,之前也因为一些代码重组而增加了大量变更行数,V3.2是因为staging太大,等等情况)。相比之下,4.9就显得比较大了。”

  Linux内核4.9很笨重,部分是因为新的“Greybus”分段支持。Greybus是Google Project Ara的一部分,该项目是9月份结束的模块化智能手机计划。现在它用于UniPro硬件传输的应用程序级协议,根据Larabel的说法,开发人员一直在为Greybus子系统工作。

  Torvalds还写道,4.10的合并窗口现在处于打开状态。但关闭时间有些尴尬,大概是在两周后的圣诞节。对于尚未准备好合并的开发人员,目前的解决方案就是不合并。

  此外,超过三分之二的更改是对驱动程序(分阶段,大部分是GPU和网络),包括AMD Radeon的支持和改进。其他值得注意的功能有支持Raspberry Pi Zero,支持28个ARM设备,内存保护密钥支持,对LG Nexus 5 和Raspberry Pi Zero(以及其他许多ARM硬件)提供主线支持、增添了Greybus子系统、支持vmapped内核栈以及添加的其他许多特性。

  细数Linux走过的岁月,似乎它早已在我们的生活中根深蒂固,从android智能手机与平板电脑,到企业服务器再到超级计算机,Linux内核一直在持续变更,在变更之下又可以长期保持稳定,要知道,这不是一件容易的事情,Linux内核团队显然是进行了极大地完善。

  与此同时,在更新进行时,前后两套内核都将保持固定,这部分工作是由Linux社区执行的。在社区和内核团队的双重努力下,Linux才得以不断更新发展,相比于Linux内核本身的发展,Linux相关的优秀的开发人员却越来越难寻,而企业对具备Linux技能的开发人员又相当青睐,造成了不小的市场空缺,很多企业都在竭力挽留内部Linux开发人员的同时,不断向外抛出橄榄枝。不知道曾经以Linux开启编程生涯的程序员们还在坚持吗?是不是也早已开刷其他技能了呢?

0
相关文章