During his question and answer session at the Linux Foundation’s LinuxCon, Linus Torvalds, founder of Linux, revealed that while mainstream Linux and its popular smartphone and tablet son Google’s Android still aren’t as close as they should be, they’re slowly—ever so slowly—coming back together.
What’s also true though is that Google took Android in its own direction, a direction that wasn’t compatible with the mainstream Linux kernel. As Greg Kroah-Hartman, head of the Linux Driver Project and a Novell engineer, wrote in Android and the Linux kernel community, “The Android kernel code is more than just the few weird drivers that were in the drivers/staging/androidsubdirectory in the kernel. In order to get a working Android system, you need the new lock type they have created, as well as hooks in the core system for their security model. In order to write a driver for hardware to work on Android, you need to properly integrate into this new lock, as well as sometimes the bizarre security model. Oh, and then there’s the totally-different framebuffer driver infrastructure as well.” As you might imagine, that hasn’t gone over well in Android circles.
Still, it seemed as if Android and Linux were moving more on parallel paths than together, and that is indeed the case. At LinuxCon, Torvalds explained, that “there’s still a lot of merger to be done. … but that eventually Android and Linux would come back to a common kernel, but it will probably not be for four to five years.”
Kroah-Hartman added that one problem is that “Google’s Android team is very small and over-subscribed to so they’re resource restrained It would be cheaper in the long run for them to work with us.” Torvalds added that “I’m not at all afraid of forks… even when forks happen there are all these points of pain where two groups have had different issues, it just takes a while for people to join back, but the joining will happen. We’re just going different directions for a while, but in the long run the sides will come together so I’m not worried.”
Kroah-Hartman,pointed out that for years Google’s in-house Linux that it uses for servers, was a fork of the Linux 2.4 for many years. Torvalds explained that Google did this because they had made so many performance tweaks to improve it for Google’s search engine. He also added that many other companies tweak Linux for their particular uses. Fortunately, thanks to the GPLv2, all the significant changes come back to the mainstream kernel.
So, for the next few years, Android, while still a Linux, is indeed a Linux fork. In the long run, though, Torvalds is sure that Android will return to the mainstream Linux kernel. For better or worse though that may not be until 2016. Fortunately, for all end-users and almost all Android developers none of this will make any real world difference.