9月,Linux内核开发者GregKroah-Hartman在个人博客上确认LinuxKernel4.14是下一个LTS内核,这个内核将支持至少两年;最近延长至六年。结果,Linux4.14的开发周期比平时长了一周,我们见证了八个候选版本(rc)。4.14LTS“无畏土狼”现已可用Linux之父林纳斯·托瓦兹(LinusTorvalds)今天发布了Linux内核4.14,代号为“无畏土狼”(fearlesscoyote)。Torvalds在他的Linux内核邮件列表上宣布:“额外的短日志(shortlog)显然只是为了自rc8以来的少量开发,确实很少。提交的代码不多,而且都是小代码。”花点时间谈谈0day僵尸程序测试工具是如何变得更好的。这里所说的“机器人”是一种自动化的安全漏洞,即检测到的扫描内核代码的漏洞。主要特性Linux内核4.14LTS版本的主要特性是将异构内存管理纳入主线。开发此功能是为了允许对进程地址空间进行镜像,并确保任何设备都可以透明地使用系统内存。另一个主要变化是放松了x86_64硬件上的内存限制,允许更大的内存量。以下是您可能感兴趣的新功能的简要列表:Vega改进继续致力于Cannonlake上的硬件支持增加了对Zstd压缩的支持针对AndroidBtrfs、EXT4和XFS的改进英特尔缓存质量监控代码的重写您可以在Phoronix(https://www.phoronix.com/scan.php?page=article&item=linux)上找到更全面的Linux内核4.14功能列表-414-特征&数量=1)。Torvalds称4.14版本“令人头疼”,他敦促开发人员尽早开始使用它。4.14版本的源代码包文件(tarball)可以从kernel.org(https://www.kernel.org/)获取。最近,来自LinuxTorvalds的一封邮件解释了Linux4.14的一些功能更新。也许你可以开始为这个版本做准备。毕竟,未来所有的Linux开发者都会花很长时间在4.14版本上。一封发给全Linux成员的内部信:Linux4.14重新大改!以下是邮件全文:本周没有惊喜,虽然可能值得指出0day机器人如何变得更好(以前非常有用,但Fengguang一直在努力让它变得更好,并报告它发现的问题)。当然,一些新报告结果证明只是0day做一些根本不起作用的事情(即KASAN使用旧的gcc版本,但也做一些事情,比如加载旧的ISA驱动程序在没有意义的情况下-记住当你甚至不能问硬件是否存在,而只需要知道),但即使那样它也很好。附加的shortlog显然只适用于(小)使用sincrc8,它真的很小。提交不是很多,而且很小。在差异统计中最突出的是“leaking_addresses”perl脚本,它实际上正在积极开发中,但我将第一个版本放在4.14中,这样人们就可以看到初始状态并开始查看最终结果,也许会问自己“我的代码是否应该让这些内核地址对用户空间可见”。实际的变化有望开始渗透到4.15中,有一个明显的早期变化(已在列表中广泛讨论))默认情况下只是散列任何“%p”地址。我们曾经有严格的模式,只是将地址清零,但这实际上适得其反,因为人们经常使用地址作为“内核对象标识”进行调试(或来回互相关-想想网络套接字),所以只是清除指针值会使这些类型的使用变得毫无意义。但是使用安全散列允许这些类型的身份使用,同时实际上不会泄露地址本身。(实际地址相关的其他情况则需要其他方法-我们将限制/proc/kallsyms仅用于实际需要它们的实体等c等)。无论如何,除了那个脚本,它的其余部分实际上是单线或“几线”。最后一分钟最明显的变化可能是我们不得不恢复在/中显示良好MHz值的代码proc/cpuinfo即使对于现代“CPU动态选择频率”的情况也是如此。它运行良好,但在具有数十或数百个CPU内核的机器上太昂贵了。有一个狡猾的计划,但它没有实现4.14,所以我们会让它工作,然后向后移植。其他任何事情都非常深奥,你可以阅读变更日志。有了这个,4.15的合并窗口显然是打开。正如最近的rc公告中提到的,rc8的额外一周意味着现在感恩节在合并窗口的后半段结束,我将去家庭度假。我们会看看情况如何。我可能会决定如果我觉得我的反应不够快,我会延长合并窗口。或者也许你们甚至都不会注意到,是因为我_将_拥有我的笔记本电脑和互联网接入。或者我可能会认为4.14是一个痛苦的发布,而4.15的任何迟到的落后者都不值得_另一个_痛苦的发布,我只想说“运气不好,你迟到了合并窗口,我觉得更像是在外面太阳比接受你第二周的pullrequest”。因为4.15有一个更小更平静的版本真的很不错。无论如何,出去测试新的4.14版本,它被指定为下一个LTS内核-并开始向我发送4.15mergewindow的拉取请求。Linus翻译:本周没有惊喜,尽管可能值得指出0day机器人如何变得更好(这之前非常有用,FengGuang一直在努力让它变得更好,并报告发现的问题)附带的shortlog显然仅用于(small)从rrc8开始运行,它真的很小并且不适合很多提交。diffstat中唯一突出的是“leaking_addresses”perl脚本,它实际上正在积极开发中,但第一个版本是4.14,这样人们就可以看到初始状态和最终结果,也许会问自己“什么我应该让这些内核地址对用户空间可见吗?”实际的变化预计会开始逐渐下降到4.15,一个值得注意的早期变化(并在列表中广泛讨论)是默认散列任何“%p”地址。我们以前有严格模式,只是把地址清零,但实际上恰恰相反,因为人们经常将地址作为调试的核心对象(或者互相关——网络套接字),所以只要清空指针值就会使这些用途变成毫无意义,但可以使用安全散列来实现,而无需透露地址本身(在其他情况下,实际地址是相关的)。反正除了那一个剧本,其他的真的都是单行本或者“几行本”。可能最明显的变化是必须将/proc/cpuinfo中显示良好MHz值的代码还原为现代“CPU动态选择”案例。它运行良好,但在具有数十或数百个CPU的机器上,它太昂贵了。同时,4.15的合并窗口显然是打开的,如果觉得扩大合并窗口不能充分响应的话。或者甚至不会注意到,因为我将拥有笔记本电脑和互联网访问权限。无论如何,测试新的4.14版本,这是下一个LTS内核的样子,并开始发送4.15合并请求窗口。
