长期从事Linux内核开发的Ingo Molnar今天发布了一组大规模的补丁。多达2297个补丁从2020年底就开始整理,并完全重塑了Linux内核的头文件层次结构。这项”快速内核头文件”工作的目标是加快内核的构建时间,同时清理过程中的很多东西,以解决”依赖性地狱”问题。
这套庞大的补丁涉及到大部分的Linux内核代码库,因为它重新设计了内核构建的头文件处理。最终的结果是加快了Linux内核编译的速度,无论是清洁构建还是增量构建。
Molnar在补丁信中写道:”大多数内核开发者都知道,Linux内核中大约有1万个主要的.h头文件,在include/和arch/*/include/层次中。在过去的30多年里,它们已经成长为一套复杂而痛苦的交叉依赖关系,我们亲切地称之为”依赖地狱”。
根据Ingo的数据,在启用了”快速内核头文件”的内核中,每小时的内核构建量可能比目前的原始内核多78%。在支持的架构上,绝对的内核构建性能有可能提高50-80%。
这个大的补丁系列将许多高级头文件与其他文件解耦,取消不必要的函数,解耦类型和API头文件,自动处理头文件的依赖性,以及其他各种变化。到目前为止,这个庞大的补丁系列已经在x86/x86_64、SPARC、MIPS和ARM64上进行了测试。
这可能是有史以来代码规模最大的一个Linux内核功能调整。目前,它最初是以”征求意见”的方式发出的。如此大范围的内核构建时间的改进是非常诱人的,所以希望这个补丁系列最终能在不远的将来以某种方式被审查后,设法进入主线内核。
关于Linux快速内核头文件的所有激动人心的细节,请看这里:
https://lore.kernel.org/lkml/YdIfz+LMewetSaEB@gmail.com/T/#u
转自 https://www.cnbeta.com/articles/tech/1221403.htm