Search and compare Web Designers and Developers to build, improve or rebrand your website.
Welcome Guest | Sign In

Linux Throws a Bit of Android Into 3.3 Kernel

By Richard Adhikari
Mar 20, 2012 5:00 AM PT

Linus Torvalds, the father of Linux, announced version 3.3 of the kernel Sunday.

Linux Throws a Bit of Android Into 3.3 Kernel

Among the most noteworthy changes found in 3.3 is the merging of kernel code from the Android project.

Linux 3.3 also includes support for a new architecture, the Texas Instruments VelociTI Very Long Instruction Word (VLIW) architecture used in its C6x family of multicore devices. These were developed for embedded processor applications.

Other new features include improved balancing, a virtual switch implementation and several network improvements.

The relative importance of the changes and improvements found in release 3.3 "depends on what you use Linux for," Greg Kroah-Hartman, a fellow at The Linux Foundation, told LinuxInsider.

"Users of the latest hardware like the new support for new hardware," Kroah-Hartman elaborated. "Others like some [other] features, and [still] others, increased speed in some areas."

Enter the Android

However, it's the incorporation of Android features that have perhaps stirred up the most excitement in the Linux community. Although Android is based on Linux, it was a fork, meaning a separate code base that branched off from the main Linux repository at the website maintained by Torvalds.

There has been tension between the Linux and Android camps since the breakup, with one main point of contention reportedly being Google's "WakeLock" technology.

WakeLock lets programmers tell the kernel which computing processes should not let the computer go into a sleep state, thus reducing power consumption. It was developed by Google programmers on their own.

What Android Brings to the Table

Android features included in Linux 3.3 include Binder, Logger and the Low Memory Killer.

Binder identifies the method to invoke and pass arguments between Android processes when one Android process calls a routine in another.

Loggers are used to log records to various destinations, such as log files or the console.

Android's Low Memory Killer is put on top of existing Linux drivers for memory management. It scans the list of running processes and kills one every time its lowmem_shrink function is called.

"These aren't improvements as-is; they're different features that the Android platform uses in order to support the way the Android userspace operates," Kroah-Hartman said. "They all do different and quite varied things."

Overall, the Android code included in Linux 3.3 is "merely a tiny chunk of drivers [totaling] only 7,000 lines of code," Kroah-Hartman pointed out. "Your serial port driver is double the size of that."

Therefore, rather than Linux merging with Android, all that's happened is that the out-of-tree drivers that the Android platform uses have been added to the main tree, Kroah-Hartman stated.

Results of the Android-Linux Tie

The addition of the Android drivers "makes it easier for Android platform vendors to take the release and create a system without having to hunt around for external patches stored on various other servers," Kroah-Hartman pointed out.

It also has "improved the Android drivers a lot" because the code has been reviewed by the kernel community, Kroah-Hartman said. "Quite a number of bugs have been fixed already in the short time it has been in the tree."

Which type of online advertising is most likely to attract your favorable attention?
Straightforward display ads
Ads based on my interests
Informational articles on products/services
Video ads
Ads designed to grab my attention, e.g. pop-ups, autoplay
None -- I avoid all online ads