Asia's Source for Enterprise Network Knowledge

Saturday, October 25th, 2014

Application development

Android violates Linux license, experts claim

Google's Android mobile operating system's usage of the Linux kernel may violate open source licensing with a misappropriation of Linux code that could bring about the "collapse of the Android ecosystem," some intellectual property experts are charging.

Google is already under fire from Oracle, which has gone to court claiming that Android violates Java patents and copyrights.

The Linux issue is a separate one and no lawsuits have apparently been filed. But a few intellectual property watchers have written analyses that call into question Android's use of Linux code licensed under GPL version 2.

Although the Linux kernel is open source and freely available to developers, people who use and distribute it in derivative works must abide by strict licensing requirements. At issue is the concept of "copyleft," in which free software must be redistributed under the same terms stated in the original license. The question centers on "the library that connects Android and its applications with the underlying Linux kernel," writes NoSoftwarePatents campaign founder Florian Mueller.

"Google copied 2.5 megabytes of code from more than 700 Linux kernel header files with a homemade program that drops source code comments and some other elements, and daringly claims (in a notice at the start of each generated file) that the extracted material constitutes 'no copyrightable information,'" Mueller writes.

Mueller notes that while the GPL requires derivative works "to be made available on the same terms," Google instead publishes Android under a series of licenses that includes the GPL but also more permissive open source licenses such as Apache and some closed-source programs. The Apache license has no copyleft requirements.

Mueller's analysis was spurred on by concerns raised by intellectual property attorney Edward Naughton and another analysis by law professor and author Raymond Nimmer.

Naughton explains in a Huffington Post column that "Google built Android around Linux, which is an open source operating system licensed under the GNU General Public License version 2 (GPLv2). The GPLv2 is a 'copyleft' license: It grants everyone the freedom to copy and modify the Linux code, but that freedom carries conditions, including the requirement that any modified software code and any works 'based on' it must be made freely available to all. The very point of the GPLv2 is to make it impossible for anyone to take GPLv2-licensed code and make it private and proprietary."

Inspired by concerns raised by Nimmer, Naughton says he examined Google's use of Linux code in Android and, "What I found really surprised me: Google took a novel and quite aggressive approach to developing a key component of Android -- the Bionic Library. That library, a type of C Library, is used by all application developers who need to access the core functions of the Linux operating system. Google essentially copied hundreds of files of Linux code that were never meant to be used as is by application developers, 'cleaned' those files using a non-standard and questionable technical process, and then declared that the code was no longer subject to the GPLv2, so that developers could use it without becoming subject to copyleft effect that would normally apply to GPLv2-licensed code taken from the Linux kernel."

Naughton goes on to say, "I have serious doubts that Google's approach to the Bionic Library works under U.S. copyright law." But "what is potentially even more interesting is what happens if Google is right. If that is the case, Google has found a way to take Linux away from the open source community and privatize it."