How Much Linux Is in Android?

Nov 10, 2009

In a talk at the Embedded Linux Conference Europe in Grenoble, France, a speaker took a critical look at the design and development model of Google's first step toward Linux.

Android as schematic representation.

Matthew Porter's talk at the Grenoble conference titled "Mythbusters: Android" tackled the question of how much Android is actually Linux, how functional it is, and what is the nature of the Android community. Porter came to two interesting conclusions. First, he concluded that Android is not Linux in the strict sense of the word because important userspace components are missing, thereby making Android comparatively inaccessible and inflexible. Second, he concluded that the Android community is lagging behind other Linux and open source communities, partly because the platform is commonly developed outside the Android Open Source Project (AOSP) tree and given less priority in the open repository.

Porter works as chief software architect at the open source firm Embedded Alley, which Mentor Graphics acquired the end of July 2009. He is a PowerPC specialist, thus viewing Android from a hardware perspective. According to Porter's observations, Android uses, for example, its own mount system that works with MMC subsystems out-of-box rather than with USB devices. Support is missing for udev, glibc, and SysV process communication, but are replaced by a somewhat hard to change, hard-coded implementation from the Open Handset Alliance. Porter further explains that Android makes no use of tslib for touchscreen support and lacks effective Ethernet support. More arguments are included in his set of slides.

The talk elicited at least two opposing reactions. In his blog, Harald Welte responded, "Executive summary: Android is a screwed, hard-coded, non-portable abomination." Opposing views came from participants in the Android Discuss Google group that maintained that Android's specialized and inflexible character was a result of performance and resource reasons.

Related content

Comments

  • droid

    i agree on droid not being a full fledged os without the terminal and root access. not to mention a file browser. wtf google? thankfully these things are available for free form, you guessed it, google.com lol
  • Android Linux

    Even websites, like openttd identify Android as linux.

  • great post

    Thanks a lot for sharing the article on cash. That's a awesome article. I enjoyed the article a lot while reading. Thanks for sharing such a wonderful article.I want to say very thank you for this great informations. now i understand about it. Thank you !
    http://www.cocoschanel.com
    http://www.gucciguccis.com
    http://www.urboots.com
    http://www.handbags2012.com
    http://www.louisvuittonslv.com
    http://www.uggmalls.com
  • The Android Linux Distribution

    as I understand it, Android uses Linux as its operating system. Folks may have different definitions as to what an operating system is but at its core there is not doubt that Linux is Operating. There, in my mind I consider it a Linux Distribution. Linux Distributions like Ubuntu, Fedora, Debian, etc., may be siblings as far as distributions go, but Android should very well be considered a cousin. Rest assured, this family still has the same last name, Linux, Android does like to go-it-alone and doesn't like it's last name. They want to take advantage and exploit the Open Source systems fully, but tout tout to the general public that it does so. It would rather everyone think it is solely self-invented, a creation to the credit to themselves and not the open source community at large. I've read many a time .."this isn't Linux" and "this isn't Java". Sure it is, despite all their efforts to prove otherwise.
  • Linux kernel, OS and distro

    Linux is just the kernel.

    GNU/Linux is an operating system, where the GNU tools run on top of the linux kernel.

    Fedore, Ubuntu etc are Linux distributions (distros) that customize the GNU/Linux OS adding/stripping off FOSS/non-foss tools.

    Android is a mobile operating system that has the Linux kernel and has a JVM on top of it.

  • Android is distribution of Linux OS. It is not bad thing at all!

    Linux kernel == the operating system (monolithic kernel is complete operating system. Microkernel is just part of the operating system. Microkernel + servers(modules) is complete operating system).

    GNU/Linux == Development platform, what use LInux as OS and GNU development programs.

    Distribution == Freely distributable FOSS operating system like Linux (kernel) as a product what is designed for specific purpose (servers, desktops, embedded devices, mobile phones etc). Distribution is a software system what includes the OS (Linux kernel), system programs (can be from GNU or any other) and application programs. Together all these different softwares builds up a complete _software system_.

    Android is a Linux Distribution. Linux OS (the OS version in in Android 2.2 is 2.6.32), own Virtual Machine and other system programs and then last but not smallest, own kind application programs (web apps as well). All nicely compiled and packaged. The Google is Linux distributer with Android.

    There are other distributions as well. Maemo, Moblin and the joined distribution of them, the MeeGo.

    The Fedora, Mandriva, openSUSE, Ubuntu etc. Are well know desktop distributions. They are not "the distributions". Just well know and popular ones. The distribution can be very very specific kind for very special needs. It does not matter what userland software is in use. Linux OS makes such software system as one Linux distribution more.

    Is it terrible thing that Android is just a Linux distribution and not a new OS? NO! It is it strenght and power. Widely adopted OS what has very big community behind it. No one, not even Google, can control the Android because the OS in Android is the Linux (kernel).

    Linux is the new beginning of the Unix. That has been told in 1992-1993. Why? Because Unix purpose in 60's was that we would have one OS what would have open standard and we could move applications easily from computer to other, no one stopping or locking you to their software.
    Even that there is only one Linux OS, it is totally open and free so no one can not stop or control it. It get developed by the need of it users.

    It seems that many do not like that Android is Linux distribution because they think that Linux is bad OS. They have somekind bad memory or false memory about Linux. Linux is nothing more than just a OS. It does not offer GUI or CLI for the user, such are different normal programs running top of the Linux OS. You can have multiple different UI's for the user. But do not mistake user interface to interface to user. OS includes interface for the user but not user interace. The interface for the user is just API what other programs or devices use.

    You can even have a user interface what is like elevator control panel. You have 32 floor buttons, phone and lightscreen showing floor numbers, alarm button etc. Those buttons are the user interface but it is not part of the OS what is running the elevator and is serving a interface for the user by those devices.
  • Linux?

    Different people seems to have different meaning of the word "Linux". However word battle is not the point of the presentation. The point it seems was to summarize ways in which android is different from typical linux distros. And this was very well achieved. When I heard about android before actually buying a phone with it, I thought: Linux? a-ha! So it should be like ubuntu. I will be able to code in python on it or use existing software written in C/C++! But no, only Java is supported. I was very disappointed.
  • it is linux

    Linux is the name of the kernel. Does Andorid use that kernel. Yes!
    Then it is the variant of linux based operating systems, specifically made for mobile devices, just like you have linux for TVs, routers....they all use the same kernel code.
    What you include in userspace is specific for each distro...even if you throw away udev/HAL/DBUS...it is still Linux.
  • bob

    bob, your post lacks common sense
  • long ago

    Says the Linux kernel is 2.6.27 on my droid.
    I have a shell, it's graphical but still a shell.
    I have applications.
    I have antialiased fonts.
    I have a Linux distribution call Android.

    Thank you.
  • ANDROID IS LINUX

    why can't you people have common sense?

    Look up Android on wikipedia if you have to. Here, for everybody who is stupid, click this link. http://en.wikipedia.org/wiki/Android_%28operating_system%29

    What's the very first line say? "Android is a mobile operating system using a modified version of the Linux kernel."

    No, it is not a typical Linux distro (Ubuntu, Fedora, etc etc) but it is a Linux distro regardless, designed specifically for mobile devices.

    Maybe before positng on Linux.com, half of you twits can research what Android is.
  • Linux vs Android

    While I'm not a Linux user, I always thought the purpose or goal of Linux was that it is an open source operating system that is fully customizable by the user or device developer to suit their needs and that's exactly what Google has done. Maybe the Linux community would appreciate it more of they had the name Linux in it's name, such as "Android Linux" or "Google Linux".
    For me, I just hope that the Android phones can do better than the iPhone or phones that run on Windows Mobile. With the Motorola Droid phone, they've just about caught up with the iPhone, even though they're only on the version 2.
  • Get it Straight

    Linux is a Kernel. Android is definately a Linux Distro. Custom build on a Linux kernel. It would be nice if cellphone manufacturers released the linux drivers for the devices then maybe other better and more open distros would pop up. It will happen soon.
  • Thank you

    Hello Anika,

    Thanks for writing this post. I understand you were just summarizing and letting people know what Matthew Porter's talk was about, but it also allowed great comments to come forth, that of which I was able to learn more.

    That's my two cents worth happy

    The Android PR Gal
    @whatsupandroid
    http://whatsupandroid.com
  • Perfectly Legitimate Linux Distribution

    I disagree. I feel that, in all fairness, Android is a perfectly legitimate Linux Distribution. There is nothing in any Linux license that marries Linux to GNU, Distros choose to do so because they choose to. IMO, Android is a distro of Linux that decided to build its own userspace mostly from scratch, and what that has achieved is a very purpose-focused distribution. And it wouldn't be the first purpose-focused distro. Some even replace many GNU utilities with BSD ones.
  • Re

    Hi all,

    to do justice to the speaker I wrote about: In his slides, the dissociation of Android and Linux refers to a concept of Linux *he assumes most people have*, not necessarily his own. I cite his full conclusions from his slides here, which are not thoughoutly bad:

    - Android is different from traditional Linux
    -- When most people think of Linux, they think of a GNU/Linux distro
    -- Departure from accepted userspace components (HAL, udev, etc.)
    - Android has a lot of handset-focused policies hardcoded in the userspace code
    -- This is better than policy in kernel space
    - Solution is to continue to grow the Android Open Source Project community
    -- Community will need to unify

    Anika
  • Troubled by his Vocabulary

    In the article it is said "First, he concluded that Android is not Linux in the strict sense of the word because important userspace components are missing, thereby making Android comparatively inaccessible and inflexible."

    Where as Linux is a kernel (http://en.wikipedia.org/wiki/Linux_kernel) and his 'conclusion' is actually based on a mantra that has spawned from what is known to be traditional GNU/Linux distributions. Also, if you take a look at Wikipedia's page on 'Linux' it mentions "Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel"(http://en.wikipedia.org/wiki/Linux). Android isn't GNU/Linux styled in the traditional sense but I do have a shell, a terminal emulator and I can use all the common commands of a traditional UNIX environment and as a result I would say it fits into that classification of "Linux." So to make the arguing point that "Android is not Linux" makes me wonder why I have a Linux kernel version listed in the about page of my CyanogenMod powered myTouch 3G accompanied by root permissions and a capable terminal emulator where I can run such utilities as 'top'.

    My $0.02, take it or leave it.
  • Has anyone ever thought....

    That maybe they don't intend for Android to be "Linux" the way others think it should be? I believe their goal was to build a smartphone OS....not to build another Linux distro.
  • Android is linux .. and more

    Android is not identical to Ubuntu, Redhat, SUSE or any other linux distribution. It does however include a complete linux kernel, and is thus no less "linuxy" than those. Linux is a kernel, not a complete operating-system.



  • Give me root or forget it...

    As long as the user, me in this case, has root access to configure the device! No root access, no purchase. Not to mention if a device does not allow Linux to be installed on it, well it just is not a "smart" device!
  • 100% linux based andriod?

    Thanks sir,
    Its short but very nice article.

    Is it possible to convert android to 100% linux based distro in near future? i.e. include glibc,udev etc.

    regards,
comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News