Linux

While trawling through the Internet today I came across the Linux Foundation's page, and my eyes were pulled to their top story. Now this is nothing new, I often find plenty of great articles and news to read there, but this was different. This was a post that was about Android. 

It got me thinking (sometimes I do that) -- is Android Linux? The folks at the Linux Foundation seem to think so (and seem awfully happy about it), and I'm going to have to agree with them. Now before you purists come to West Virginia to beat some sense into me, I'm not saying that Android is unadulterated GNU Linux. Clearly it's not, there's far too many differences and psudeo-open source licensing at play to call it pure. But for all intents and purposes, it's close enough.

Android now runs on top of a standard Linux kernel, and uses many of the same kernelspace utilities and code that my desktop does. Essentially, that's what Linux is -- the heart of many different systems. Google, and the Android partners like Samsung, HTC, and CyanogenMod, then build things out to present the user with an interface to interact with the kernel. The kernel does stuff, all our taps and swipes and presses are telling it the stuff we want it to do. Just like any of the popular Linux distributions that you can install on your computer at home or work.

Android looks and acts a little different because it needs to look and act a little different to be useful on a small touch screen device. Of course, this is the simplified version of things, but if you're the type who understands how the kernelspace and userspace interact, you see where I'm coming from. Too much nerd is often too much.

So the next time you grab your Android-powered phone or tablet, just remember that you're part of the long standing tradition that is Linux. It's a good place to be.

 

Reader comments

Ask AC: Is Android Linux?

39 Comments

As you can probably tell from my icon and previous postings, I am very much "into" Linux. I use it on hundreds of different systems at home and work and have been using and administering Unix/Linux systems for 25 years. I have taught college level Unix/Linux courses, and I am one of the founding members of a very long-term Unix/Linux user's group.

I do think of Android as Linux, and I call it "Android Linux". No, it is not what you typically think of when you say "Linux"- it has proprietary parts, doesn't use X11, Android apps don't run natively under traditional Linux desktops (unfortunately), and isn't developed completely by the community. But it is the Linux kernel and uses lots of GNU parts to make it work. Think of it as another Linux distro, just built for a specific set of purposes, just like there are distros for embedded systems that might not contain X11 or all the traditional set of Linux/Unix features.

The same argument can be said for "is Linux Unix?" My answer- "yes", it is a "unix" although not "UNIX". In many ways it is identical- it is POSIX compliant, it is designed under the same principles, it acts the same, it's GUI is primarily X11, it can replace UNIX in just about every way, it can even run some cross-platform Unix binaries. But it doesn't contain the "UNIX" source code (despite what SCO seemed to think) or license the name. Nor has anyone paid for it to pass the X/Open tests for the name "UNIX". If it looks like a duck, quacks like a duck, and acts like a duck... is it a duck?

Technically, Linux is just a kernel, not a full OS. So in the past, Android was a fork of Linux, and now that its running an unaltered kernel, it literally is linux. If you need proof, just look at those who are successfully running full Debian and Ubuntu desktops from within Android using a combination of chroot and VNC.

Actully Linux Kernel inside Android was always unaltered, they did some patches to add features they want, for example they implemented wake locks in power menagemnt allowing processes to finish something until device go to sleep (if i understand that) that actully recently got merged to mainline kernel.

Short answer: No

Long answer: Linux kernel is a monolithic kernel. That means Linux kernel is whole/complete operating system alone. None of GNU software belongs to Linux operating system. Case would be different if Linux would be a microkernel and GNU would provide OS servers for it, like with HURD operating system what is a Mach microkernel + HIRD (OS servers).

There has never be a so called "GNU/Linux" because Linux isn't a microkernel.

And "Linux" means exactly same thing what people talk about as "Linux kernel". Linux does not mean a distributed software system like Ubuntu or Android, but only a operating system (what monolithic kernel is).

All distributions runs same software, what distribution is responsible of is software distribution and management, system configuration, some user friendly stuff, sometimes focusing in specific hardware profile. But essentially whatever you use Debian, Ubuntu, Fedora, Gentoo or whatever, you gonna use same software and even closed source bineries should work (like Flash or Skype for example :p) ,people tend to call it GNU/Linux. So for me treating Debian or Ubuntu as separate operating system is really misleading in understanding Linux...

I agree. And it is actually very annoying at times. For example, this trend of treating "Ubuntu" as if it *is* Linux, not just a single Linux distribution, creates a lot of animosity in the FOSS world. It is a difficult situation. Linux distributions are very important, and a lot of work goes into them. The strength of Linux is the fact that it is so dynamic and adaptable and there are so many distributions to meet so many needs. The weakness of Linux is the fact that it is so dynamic and adaptable and there are so many distributions to meet so many needs.

There is no right answer.

No, they use same kernel as in OS X, Xnu/Mech aka Darwin, which is apple fork of BSD, but it's still unix-like system and some linux software (specially software that runs on console) will work on OS X if you provide dependies and recompile it from source, problem might be with UI software since Apple envriement is diffrent then used in Linux.

XNU is complete operating system, not a kernel.
XNU has a Mach microkernel and servers.

Darwin is a development package, what includes a XNU operating system and compiler and other development tools what are needed to compile XNU with correct settings against OSX proprietary API/ABI so they can be ran by XNU.

XNU is 100% open source and free software operating system, accepted by OSI and FSF.

And so are TiVo DVR's and dozens of different models of routers, hand-held GPS systems, televisions, kiosks, vehicle controls, printers, and hundreds of other different types of devices. Linux is at the heart of many more devices than most people would even imagine. It runs millions of servers on the Internet, absolutely dwarfing anything else. It is used in the largest of supercomputers and the smallest of dedicated controllers. It powers the #1 smartphone platform and the #3 tablet platform. It is everywhere and really does deserve far more recognition than it gets. One of the few place is does not dominate is the one most visible places people seem to focus their attention- the traditional desktop/laptop computer. There, it can succeed too, but there is fierce competition and a few companies that work VERY hard to lock people into proprietary platforms.

There was nothing fanboyish about that comment, everything he said is true, he didn't say "linux rules X because everything else suxorz", he just stated where linux is most prominent without opinion :P

The part claiming it will succeed on the consumer desktop is definitely a fanboyish comment, even some of the most diehard Linux users I know have given up the "This year is the year of Linux" stance.

"This year is the year of Linux on desktops" meme isn't from Linux users but a laughs from Microsoft fans. Who have not seen that Linux did conquer everything else than desktop andsurrounded Microsoft is surrounded. Why even Microsoft went against Linux so badly... or did you believe that so big software company goes against Linux if it would only be ran a one million or less users?

Linux is everywhere. It runs modern digital world as you know it, literally. From internet to telephone networks and television systems and even radios.
If Linux would dissapear in second, whole western world would go crazy. No banking and stock systems, no wide long range communications etc.

I know NOTHING about any of this, but it is really cool to learn about the connection between Linux and the Android platform. :-) Thank you all for sharing the info!

"Now before you purists come to West Virginia to beat some sense into me, I'm not saying that Android is unadulterated GNU Linux. Clearly it's not" -Jerry

Boy it's a good thing you back peddled quickly. I was already grabbing my keys and planing to pay you a visit so I could educate you on what IS linux.

J.k. good article. Actually what few people really know is that historically "true Linux" was just the kernel not so much the OS. So yeah in the truest sence Android IS Linux.

=X=

Same here. The kernel or backend itself is what makes it Linux, the front end can be anything you want to make it friendly for the end user. Whether its the default Android GUI from Google, HTC's Sense or Samsung's TouchWiz.

I was very happy tinkering around with KDE and Gnome as an interface for many years. Did I want something better? Don't know, but I was content and happy where I was. It was never truly user friendly for the average user but for the rest of us it was heaven I think.

"It's a good place to be." - And I wouldn't want to be anywhere else.

The fact that android is linux based as are TomTom devices made me puzzled why it took them so long to provide an android version.

Yo dawg, I heard you like Linux. So we put Linux in your Android so now you can Linux while you Linux!

Personally, I would rather it be straight Linux. I hate the android machine on top of Linux. But Android makes it easier for programers to make apps and prevents your mom from calling you asking how to emerge, apt-get, Syu or sudo dpkg the latest Angrybirds tarball.

While Android is built on Unix, as is Mac & Linux, it's, IMO, the lamest flavor around. With ICS versions 4.0.x+, you can't even transfer files to another Linux OS, due to A's dumping USB Mass Storage option. Additionally, Android, like Apple, doesn't play well with Flash; and can't upload files to youtube, anymore, and a fix seems months away. Indeed, Android is Linux, but it's giving Linux a bad name and making me comtemplate moving over to Mac...or at least dropping my Android for an iPhone...as, now, neither play well with Flash (vids are my main focus). I hope it gets better or I'm going to have to just figure out how to run straight Linux OS's on my device, which would be stellar :) as I would be able to use Goalbit P2P streaming on it! Thx for the article

USB Mass Storage option has not been dropped. I have no idea where you are getting your information but clearly you are talking out of your ass,

Rhetorical question: Are all bloggers so inept at understanding history?

As has been already pointed out; Linux is a kernel, IOS sucks... sorry, I meant is based on BSD (for the 12 year olds in the audience, Steve (What a fucking asshole) Jobs started a company in the 1990's that created an (yet another) operating system with a tightly couple development platform, all neatly called NeXT Step. Or some other camel case version. Who cares?) -- Hey, I think I just matched nested parens... cool!

Once Apple figured out that the Pepsi CEO was just there for a paycheck, they brought Steve (Asshole) back and he brought his pet project.. sorry.. bought his pet project back with him. Anyone see a conflict of interest here?

Meanwhile, in Google land; the socialist boys that started google have real bonner for Java. Not surprising... it's one of the 2 languages they know and WTF, it makes them shit-piles of money. Anyway, Java was the fad of the week when they started on their quest so they could JVM their way around the world and make lot's of money on existing computers.

(Credit where credit is due) when the commies came up with a "smart" dumb terminal concept, they said "Let's build it in Java, cuz we know Java and it's Internet Cool." But Java does not run on bare metal...(I'll be our commie boys thought about writing a bare metal version... oh wait! ChromeOS?) .. so they decided to leverage the "Free" (as in beer and freedom) OS that already have a JVM available.... Linux. (That's pronounced Leenooks, children)

So yeah, DUH!, Android is Linux as much as Ubuntu (SUCKS!), Fedora, SuSE and the 1200 other distros are Linux... or as the famous Communist Richard Stallman says: GNU/Linux. On this technicality I agree with him... otherwise he's batshit crazy.

Grow up children. Read stuff like "Code Complete" (Even tho is's published by MS Press) and learn your history. You are standing on the shoulders of giants (Not mine, BTW). Quit re-inventing new languages and start learning how to use the tools you have available. I mean do we really need a language call Hascal? Or Node.js? Javascript sucks ass... can we get a "real" browser language. No MS you can't play in this game. Mostly because you suck. EVERYONE hates Balmer and Gates (Living asshole) is just as big of a rip-off-artist as Jobs (the dead asshole).

This is all just MHO of course.
(Fanboys proceed to be devoted)

Sorry for the type-o's kiddies...I've been drinking again ;) LMAO.. Steve Jobs was always still an asshole. But so is Larry (OMG what a MAJOR FUCKING Asshole) Ellison.

Linux kernel is a monolithic kernel. That means Linux kernel is whole/complete operating system alone. None of GNU software belongs to Linux operating system. Case would be different if Linux would be a microkernel and GNU would provide OS servers for it, like with HURD operating system what is a Mach microkernel + HIRD (OS servers).

There has never be a so called "GNU/Linux" because Linux isn't a microkernel.

And "Linux" means exactly same thing what people talk about as "Linux kernel". Linux does not mean a distributed software system like Ubuntu or Android, but only a operating system (what monolithic kernel is).

Stallman and other GNU fans do not want to talk about differences of OS architectures and their history. Heck, they don't want you even know that all software in the beginning was open source (free software if you will) before stallman was even born. Even first Unix was open source. It was only captured because no one protected their source... that's is only reason why RMS is great because writing GPL license.

Hm... I'm not sure I buy your concept of an Operating System as a kernel only, but OK. Even if you have that (an OS) you can't build a distro without GNU. GNU had everything ready except a decent kernel. We still have their crap-tastic name resolution from the 1970's. /etc/resolv.conf is a 1/2 ass, un-cached, un-intelligent way of doing name/ip lookups.

In any case, Socialism sucks which is why Obama does too. (He's a socialist...)

Pipe that in your smoke and stick it.

I too found a pair of nesting matching parens in my code recently. I am happily running regina rexx and The Hessling Editor on Linux Mint 13 KDE as it is all recreation for me anymore. I appreciate your sincerity and your cynicism and agree with your sentiments. That may not be good news. Just a buffalo singin' the dinosaur blues -JJWalker

Beating old horses*
Although not a micro kernel as android is not red hat Linux, the origins of Linux stemming as a bunch of coding meant to replace unix as in turn Android is the boot legged, all be it completely rewritten still traced from the original base structured image of unix called GNU. In turn Android is GNU as Linux would not exist without GNU as is today and Android would not exist without Linux as it stands today. Suck it Linus.

Be careful when reading Web content about all of this. People are parsing language to suit their agendas.

Nothing is proven true until it works on real-world hardware without going through illegal or overly elaborate hardware or technical gymnastics! It's just like when sales people start "talking phone" -- the Bullshit Meter goes up to infinity and sticks there.

Just calling Android Linux does not make it possible for me to download an Android VM and run it inside of Ubuntu without further alterations or setup. And running proprietary Android Apps like the tablets do is genuinely impossible, folks! Google Play is NOT Android!