官方的 Ubuntu apt 源提供多个版本的内核,如、、、、generic
等。例如:lowlatency
aws
azure
$ apt-cache show linux-image-5\* | grep Package:
...
Package: linux-image-5.4.0-1036-gcp
Package: linux-image-5.4.0-1037-aws
Package: linux-image-5.4.0-1037-oracle
Package: linux-image-5.4.0-1039-azure
Package: linux-image-5.4.0-37-generic
Package: linux-image-5.4.0-37-lowlatency
这些版本有何不同?
- 它是否仅仅是在内核编译期间用来调整特定参数的不同配置?
- 是否默认启用/嵌入不同的内核模块?
- 内核源代码是否修补了不同的代码?
- 它们是否定期在一条共同的主线上重新建立基础,还是它们很久以前就出现了分歧,现在只是彼此大部分相似?
我自己怎么能理解这些差异呢?
- 是否有一个公共论坛,这些软件包的维护者可以在其中讨论为什么版本
gcp
应该有所不同generic
? - 每个变体的源代码、配置和构建过程是否公开维护,以便与基线进行比较?
我自己也曾努力寻找这些问题的答案,但可能没有找到合适的地方。从我目前所见,我们似乎只需要azure
在 Azure VM 上运行内核的变体,并在 EC2 上运行变体,而不必担心为什么,也不必担心在所有云提供商中aws
使用可能会产生什么后果。generic
更新 1:
另一个 StackExchange 问题generic
对vs的解释还算不错lowlatency
,但没有涵盖内核的任何云提供商变体。