或者说,哪个版本的/ proc / version会吐出来。
#1 楼
AOSP中的Linux版本 Android Version |API Level |Linux Version in AOSP |Header Version
----------------------------------------------------------------------------------------
1.5 Cupcake |3 |(2.6.27) |
1.6 Donut |4 |(2.6.29) |2.6.18
2.0/1 Eclair |5-7 |(2.6.29) |2.6.18
2.2.x Froyo |8 |(2.6.32) |2.6.18
2.3.x Gingerbread |9, 10 |(2.6.35) |2.6.18
3.x.x Honeycomb |11-13 |(2.6.36) |2.6.18
4.0.x Ice Cream San|14, 15 |(3.0.1) |2.6.18
4.1.x Jelly Bean |16 |(3.0.31) |2.6.18
4.2.x Jelly Bean |17 |(3.4.0) |2.6.18
4.3 Jelly Bean |18 |(3.4.39) |2.6.18
4.4 Kit Kat |19, 20 |(3.10) |2.6.18
5.x Lollipop |21, 22 |(3.16.1) |3.14.0
6.0 Marshmallow |23 |(3.18.10) |3.18.10
7.0 Nougat |24 | 3.18.48 4.4.0 |4.4.1
7.1 Nougat |25 | ? |4.4.1
8.0 Oreo |26 | 3.18.72 4.4.83 4.9.44 |4.10.0
8.1 Oreo |27 | 3.18.70 4.4.88 4.9.56 |4.10.0
9.0 Pie |28 | 4.4.146 4.9.118 4.14.61 |4.15.0
10.0 Q |29 | 4.9.191 4.14.142 4.19.71|5.0.3
表编译自:
Wikipedia Android版本历史记录(在括号中;找不到其源代码)
android / kernel / common / Makefile(AOSP中的Linux)
android /平台/外部/kernel-headers/original/uapi/linux/version.h(Bionic使用的Linux标头注意:Android的其他“发行版”可能运行不同的内核版本。
欢迎任何人来纠正和扩展此表。请保持格式。
为什么Android OS /内核版本不匹配
OEM倾向于将其主要Android更新与最初发布该设备的内核类似。这很可能避免较新的内核出现硬件和驱动程序不兼容的问题。例如,已更新为运行Android 8.0 Oreo但最初随附6.0 Marshmallow的设备可能仍在运行Linux 3.18.x,而不是Linux4.10.x。
Linux版本上的供应商测试套件(VTS)要求
根据2017年XDA-Developers上的一篇文章(已缩短):
OEM一直关注的一个方面是Linux内核版本,但是随着Android Oreo的改变。只要OEM能够通过Google进行的认证测试,他们就不会在意新设备中使用的内核版本。这通常不是问题,因为大多数OEM会在其他OEM使用的那一代产品中使用相同版本的内核,因为它与硬件驱动程序的支持紧密相关。但是,有些已经掉入裂缝,这开始引起安全问题。这是Google最近一直在认真对待的事情,因此,他们要开始强制执行此命令是有道理的。
从今年开始,Android Oreo附带的智能手机开始,Google要求2017年生产的所有SoC必须与内核4.4或更高版本。
当前,升级到Android Oreo的现有设备仅需要运行3.18或更高版本的内核,而不必升级以支持Project Treble。
根据https://android.googlesource。 com / platform / test / vts-testcase / kernel /,Linux版本要求VtsKernelConfigTest或VtsKernelVersionTest,分别为8.0、8.1和9.0,但后来在10.0上删除了。对于8.0和8.1,它要求版本为3.18、4.4或4.9。对于9.0,它要求版本至少为4.4.107、4.9.84或4.14.42。
更多技术和最新信息可直接从AOSP网站获得:https://source.android.com/设备/体系结构/内核/核心内核要求
评论
没有硬性规定!例如,Zte Blade上的ICS / JB使用的内核是2.6.35,Sony Xperia Mini上的ICS是2.6.32 ...以少量盐为唯一准则:)
– t0mm13b
13年8月21日在12:31
我完全可以理解为什么运行同一Android版本的不同设备将运行不同的内核,但是此表只是一个经验法则,是的,我希望凭经验法则可以理解一下=
–约翰
13年8月21日在12:43
让我们将此处的表限制为AOSP Android!
–Robert Siemer
13年8月22日在13:27
同样,当发布具有特定android版本和内核的设备,然后由制造商更新android版本时,内核版本大多保持带有补丁的初始版本。
–巴拉特G
2015年10月15日在2:23
请注意,即使Google也不遵守此规定。刚刚使用API 26检查了模拟器,内核为3.18.56+
–罗伊·福克(Roy Falk)
17年12月24日在5:32
评论
相关:为什么会有这么多不同的Android内核,Linux内核和Android内核之间有什么区别?