“Google has opened a public kernel repository, marked as experimental, for the Linux 3.8 kernel. The kernel repo is built from the standard Linux kernel, with Android modifications added by the folks in Mountain View working on the Android project. The reason this is good news? 3.8 includes three important and interesting changes for mobile devices – support for open source NVIDIA Tegra and Samsung Exynos DRM drivers, support for the Flash-Friendly File-System, and a lower memory footprint – in some cases much lower. Having native support means less development time by Google or anyone else building the kernel for Android, and everyone loves more memory for apps instead of the system.”
It only mentions the benefits to them, but it also means that it is easier to create custom firmware like Cyanogen or port an other Linux-based OS to such devices. Like: Tizen, Ubuntu, WebOS, FirefoxOS and what have you.
This is probably a really stupid question, but why would that make it easier to port another (Linux) OS than it is at the moment?
Wouldn’t the conditions for this be that the other OS had to be running the same kernel (which none do at present) or is there another reason that I’m completely overlooking?
If the kernel is the same or more similair version is in other Linux-based OS then it there is a bigger chance of that drivers will fit.
Sometimes drivers depend on other infrastructure in the kernel, the less different between ‘mainline’ and Android the better.
Yeah, you are correct. But, if future devices use this kernel, it will help Ubuntu,Jolla,Firefox et All port their operating systems to those future devices.
Per terms of the GPL, they would be required to release the source anyways, but its nice that they are doing it before it gets shipped in devices. Might make any porting of alternative OS’ a bit easier, if they require additional changes to the kernel.
And why should not be a benefit fork? Maybe not for Google, but why should they public admit ?
People today just think about this stupid “Android fragmentation” thing. C’mon, lets make a better kernel and stop using this crap binary drivers and that’s all.
This is great news! Current Android kernels are too old to support a few cool things that improve network interactivity and overall performance that’s usually sucky (yes, admit it!), especially over wireless and cellular links.
They are:
– Byte Queue Limits – Introduced in 3.3
– codel and especially fq_codel – Since 3.7 I believe
– TCP Fast Open – since 3.6 (client) and 3.7 (server)
– Debloated network drivers – Alas this is mostly done for ethernet drivers, while wireless and cellular are worse of due to closed nature of hardware/drivers.
But codel works so great that a simple:
tc qdisc add dev eth0 root fq_codel
does wonders
(You need iproute2 3.7 or higher)
Google’s 3.8 change log: https://android.googlesource.com/kernel/common/+log/experimental/and…
Nexus 4 and Nexus 10 are already running on 3.4 since they shipped last year.
Correct. However, Nexus 7 with Android 4.2.2 runs kernel 3.1 though. And if my memory serves me wrong, it’s not 3.3+ anyway.