Android is gebaseerd op Linux, maar wat betekent dat?

  • Chris Hoffman

    @chrisbhoffman

  • Updated July 12, 2017, 10:20pm EDT

android-linux

Android mag dan gebaseerd zijn op Linux, maar het is niet gebaseerd op het type Linux-systeem dat u misschien op uw pc hebt gebruikt. U kunt Android-apps niet uitvoeren op typische Linux-distributies en u kunt de Linux-programma’s waarmee u bekend bent niet op Android uitvoeren.

Linux vormt de kern van Android, maar Google heeft niet alle typische software en bibliotheken toegevoegd die u zou vinden op een Linux-distributie zoals Ubuntu. Dit maakt het verschil.

“Linux” vs. De Linux Kernel

GERELATEERD: “Linux” is niet alleen Linux: 8 stukjes software waaruit Linux-systemen bestaan

Het grote verschil hier komt neer op wat we bedoelen met Linux. Mensen gebruiken de term “Linux” om veel verschillende dingen te betekenen. Op zijn eenvoudigst betekent Linux de Linux-kernel. Een kernel is het kerngedeelte van elk besturingssysteem.

Advertentie

We verwijzen ook naar Linux-distributies als gewoon “Linux.” Linux-distributies zijn echter niet alleen de Linux-kernel. Ze bevatten veel andere stukken software, zoals de GNU shell utilities, Xorg grafische server, GNOME desktop, Firefox webbrowser, enzovoort. Daarom denken sommige mensen dat de term GNU/Linux moet worden gebruikt voor “Linux-distributies” zoals Ubuntu, Mint, Debian, Fedora, Arch, openSUSE, en anderen.

Android gebruikt de Linux-kernel onder de motorkap. Omdat Linux open-source is, konden Google’s Android-ontwikkelaars de Linux-kernel aanpassen aan hun behoeften. Linux geeft de Android-ontwikkelaars een vooraf gebouwde, reeds onderhouden kernel van het besturingssysteem om mee te beginnen, zodat ze niet hun eigen kernel hoeven te schrijven. Dit is de manier waarop veel verschillende apparaten zijn gebouwd – de PlayStation 4 gebruikt bijvoorbeeld de open-source FreeBSD-kernel, terwijl de Xbox One de Windows NT-kernel gebruikt die te vinden is in moderne versies van Windows.

U ziet zelfs de Linux-kernelversie die op uw apparaat draait onder Over telefoon of Over tablet in Android’s Instellingen.

linux-kernel-version-on-android-about-screen

De verschillen

GeRELATEERD: Wat is een Linux-distributie en hoe verschillen ze van elkaar?

Er is discussie over de vraag of Android een “Linux-distributie” kan worden genoemd. Het maakt gebruik van de Linux-kernel en andere software, maar het bevat niet veel van de software die Linux-distributies normaal gesproken bevatten.

Advertentie

Wanneer u een Android-apparaat opstart, wordt de Linux-kernel geladen net zoals het zou doen op een Linux-distributie. Veel van de andere software is echter anders. Android bevat niet de GNU C Library (glibc) die wordt gebruikt op standaard Linux-distributies, noch bevat het alle GNU-bibliotheken die je zou vinden op een typische Linux-distributie. Het bevat ook geen X-server zoals Xorg, dus je kunt niet draaien standaard grafische Linux-toepassingen.

In plaats van het uitvoeren van typische Linux-toepassingen, Android maakt gebruik van de Dalvik virtuele machine om in wezen draaien toepassingen geschreven in Java. Deze toepassingen zijn gericht op Android-apparaten en de toepassingsprogramma-interfaces (API’s) die Android biedt in plaats van te zijn gericht op Linux in het algemeen.

android-architecture

Waarom u geen desktop-Linux-software op Android kunt uitvoeren

GERELATEERD: Wat is Unix en waarom is dat van belang?

Omdat Android geen grafische X-server of alle standaard GNU-bibliotheken bevat, kunt u niet zomaar Linux-toepassingen op Android uitvoeren. Je moet applicaties draaien die speciaal voor Android zijn geschreven.

Android heeft wel een shell zoals je die op Linux vindt. Er is geen manier om toegang te krijgen tot het out-of-the-box, maar u kunt een app installeren zoals Android Terminal Emulator om toegang te krijgen tot deze terminalomgeving.

Advertentie

Standaard is er niet veel wat je hier kunt doen. De terminal wordt nog steeds uitgevoerd in een beperkte omgeving, dus je kunt geen volledige root-shell krijgen zonder je Android-apparaat te rooten. Veel standaard commando’s die u nodig zou kunnen hebben zijn niet beschikbaar – dat is waarom mensen die hun apparaat rooten over het algemeen de BusyBox-applicatie installeren, die veel opdrachtregelhulpprogramma’s installeert. Deze hulpprogramma’s worden door toepassingen gebruikt om dingen te doen met hun root-toegang.

android-terminal-emulator-uname

Waarom je Android-software niet op Desktop Linux kunt uitvoeren

GERELATEERD: Hoe Android-games te spelen (en Android-apps uit te voeren) op Windows

Linux bevat niet de virtuele machine Dalvik, dus het kan geen Android-apps uitvoeren. De Dalvik virtuele machine en alle andere software van Android kan niet gewoon op een desktop Linux-machine worden gezet – je zou meer werk moeten doen om Android-apps uit te voeren naar een venster op een standaard desktop via Xorg, bijvoorbeeld. Theoretisch, met genoeg werk, zouden ontwikkelaars Dalvik kunnen laten draaien op desktop Linux zodat desktop Linux gebruikers Android apps kunnen draaien op hun desktops. Het nu slapende Ubuntu voor Android-product probeerde zoiets te doen, door Ubuntu en Android op een telefoon te integreren en die Android-apps op de desktop van Ubuntu te laten draaien.

BlueStacks en andere Android-app-emulators proberen dit te doen voor Windows en Mac. Ze draaien Android op virtuele hardware in een virtuele machine, waardoor ze Android-apps kunnen uitvoeren – met een prestatieverlies – op uw bureaublad. Deze oplossingen zijn echter niet erg populair gebleken.

apk-on-desktop-linux

Google’s Chrome OS is ook gebaseerd op Linux. Net als Android biedt Chrome OS geen standaard X-venstersysteem, dus standaard Linux-toepassingen kunnen niet op Chrome OS worden uitgevoerd. In tegenstelling tot Android staat Chrome OS dichter bij standaard desktop Linux-distributies, zodat u de ontwikkelaarsmodus kunt gebruiken om de ontbrekende Linux-desktopsoftware te installeren.

Advertentie

Image Credit: ranti on Flickr, Anatomy and Physiology of Android

Chris Hoffman
Chris Hoffman is hoofdredacteur van How-To Geek. Hij schrijft al meer dan tien jaar over technologie en was twee jaar columnist voor PCWorld. Chris heeft geschreven voor The New York Times, is geïnterviewd als een technologie-expert op tv-zenders zoals Miami’s NBC 6, en had zijn werk behandeld door nieuwsbronnen zoals de BBC. Sinds 2011 heeft Chris meer dan 2.000 artikelen geschreven die bijna een miljard keer zijn gelezen – en dat is alleen hier bij How-To Geek.Read Full Bio ”

Leave a Reply

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.