At this year’s Linux Plumbers Conference in Lisbon, Portugal, earlier this month, Google announced plans to use the mainstream Linux kernel as the base for future versions of Android rather than the highly customized one being used right now. According to the search giant, the generic Linux kernel will bring a lot of positive changes to the platform by reducing technical overhead for Google and making updates faster and more timely.
As things stand now, Google and its Android partners have to merge every single Android-specific change into each new Linux kernel version, making it a laborious and time-consuming process. According to the company, the Android common kernel has more than 32,000 additions and over 1,500 deletions compared to mainline Linux 4.14.0. Individual OEMs and vendors often make even more changes on top of it, making the whole process a cumbersome one.
As a proof of concept, the director of the Linaro Consumer Group, Tom Gall, showed off a Poco F1 running Android 10 on top of a mainline Linux kernel. While it’s not immediately clear as to whether all the features of the phone were working as intended, the fact that was possible at all was a testament to the persistent work of the Google Kernel Team, which got their code upstream in their relentless pursuit to enable vendors to run their custom Android ROMs on top of mainline Linux.
To take their plan from concept to reality, Google engineers are looking to modularize the mainstream Linux kernel on the lines of Project Treble. According to ArsTechnica, “Google’s proposal for bringing Android closer to mainline Linux … involves stabilizing Linux’s in-kernel ABI and having a stable interface for the Linux kernel and hardware vendors to write to”.
It’s too early to say whether Google’s plan will work as intended, with the Android Kernel Team lead, Sandeep Patil, admitting that it’s still a long way to go for him and his colleagues to realize that goal. “We have miles to go, and we know that, but we’ve come along from where we started”, he said.