Android is Linux-based operating system, which provides flexibility to manufacturers and developers to customize it. Smartphone makers and Developers have free reign with certain aspects. One aspect that has been up to the OEM is the Linux kernel version but this is changing with Android Oreo to seek security for new Android version.
XDA Developers reported that, OEMs have to follow some requirements placed by Google and builds still had to pass Google’s other tests, but the kernel number itself was not an issue. Moving forward, Android devices running Oreo must use at least kernel 3.18, but there are more specific requirements to meet as well.
On the Android Source page Google explains:
Android O mandates a minimum kernel version and kernel configuration and checks them both in VTS as well as during an OTA. Android device kernels must enable the kernel .config support along with the option to read the kernel configuration at runtime through procfs.
Further detail about the Linux kernel version requirements is like:
- All SoCs productized in 2017 must launch with kernel 4.4 or newer.
- All other SoCs launching new Android devices running Android O must use kernel 3.18 or newer.
- Regardless of launch date, all SoCs with device launches on Android O remain subject to kernel changes required to enable Treble.
- Older Android devices released prior to Android O but that will be upgraded to Android O can continue to use their original base kernel version if desired.
The main reason for introducing the Linux kernel mandate is focus of Google on security, which is hard to argue about.