Android perustuu Linuxiin, mutta mitä se tarkoittaa?

  • Chris Hoffman

    @chrisbhoffman

  • Päivitetty 12. heinäkuuta 2017, 22:20 EDT

android-linux

Android saattaa perustua Linuxiin, mutta se ei perustu siihen Linux-järjestelmään, jota olet saattanut käyttää tietokoneellasi. Android-sovelluksia ei voi ajaa tyypillisillä Linux-jakeluilla eikä Androidilla voi ajaa tuttuja Linux-ohjelmia.

Linux muodostaa Androidin ydinosan, mutta Google ei ole lisännyt siihen kaikkia tyypillisiä ohjelmistoja ja kirjastoja, jotka löytyvät Linux-jakelusta, kuten Ubuntusta. Tämä tekee eron.

”Linux” vs. Linux-ydin

RELATED: ”Linux” ei ole pelkkä Linux: 8 ohjelmistopalaa, jotka muodostavat Linux-järjestelmät

Suuri ero on siinä, mitä tarkoitamme Linuxilla. Ihmiset käyttävät termiä ”Linux” tarkoittamaan monia eri asioita. Yksinkertaisimmillaan Linux tarkoittaa Linux-ydintä. Ydin on minkä tahansa käyttöjärjestelmän ydinosa.

Mainos

Kutsumme Linux-jakeluja myös yksinkertaisesti ”Linuxiksi”. Linux-jakelut eivät kuitenkaan ole vain Linux-ydin. Ne sisältävät monia muitakin ohjelmistoja, kuten GNU shell -apuohjelmat, Xorg-grafiikkapalvelimen, GNOME-työpöydän, Firefox-verkkoselaimen ja niin edelleen. Siksi jotkut ovat sitä mieltä, että termiä GNU/Linux pitäisi käyttää ”Linux-jakeluista”, kuten Ubuntu, Mint, Debian, Fedora, Arch, openSUSE ja muut.

Android käyttää Linux-ydintä konepellin alla. Koska Linux on avointa lähdekoodia, Googlen Android-kehittäjät voisivat muokata Linux-ytimen tarpeisiinsa sopivaksi. Linux antaa Android-kehittäjille valmiiksi rakennetun, jo ylläpidetyn käyttöjärjestelmän ytimen, joten heidän ei tarvitse kirjoittaa omaa ydintä. Näin rakennetaan monia erilaisia laitteita – esimerkiksi PlayStation 4 käyttää avoimen lähdekoodin FreeBSD-ydintä, kun taas Xbox One käyttää Windows NT -ydintä, joka löytyy nykyaikaisista Windows-versioista.

Näet jopa laitteessasi käynnissä olevan Linux-ytimen version Androidin Asetukset-kohdassa Tietoja puhelimesta tai Tietoja tabletista.

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

Eroja

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

Eroja

RELATED: Mikä on Linux-jakelu ja miten ne eroavat toisistaan?

Keskustelua käydään siitä, voidaanko Androidia pitää ”Linux-jakeluna”. Se käyttää Linux-ydintä ja muita ohjelmistoja, mutta se ei sisällä paljoa niistä ohjelmistoista, joita Linux-jakelut yleensä sisältävät.

Mainos

Kun käynnistät Android-laitteen, Linux-ydin latautuu aivan kuten Linux-jakelussa. Suuri osa muista ohjelmistoista on kuitenkin erilaisia. Android ei sisällä GNU C -kirjastoa (glibc), jota käytetään tavallisissa Linux-jakeluissa, eikä se sisällä kaikkia GNU-kirjastoja, joita tyypillisessä Linux-jakelussa on. Se ei myöskään sisällä Xorgin kaltaista X-palvelinta, joten et voi ajaa tavallisia graafisia Linux-sovelluksia.

Tyypillisten Linux-sovellusten sijaan Android käyttää Dalvik-virtuaalikonetta pääasiassa Java-kielellä kirjoitettujen sovellusten ajamiseen. Nämä sovellukset on suunnattu Android-laitteille ja Androidin tarjoamille sovellusohjelmointirajapinnoille (API) sen sijaan, että ne olisi suunnattu Linuxille yleensä.

android-architecture

Miksi et voi ajaa työpöytä-Linux-ohjelmistoja Androidissa

SUOSITUKSET:

Koska Android ei sisällä graafista X-palvelinta tai kaikkia GNU-standardikirjastoja, et voi yksinkertaisesti ajaa Linux-sovelluksia Androidissa. Sinun on ajettava sovelluksia, jotka on kirjoitettu erityisesti Androidia varten.

Androidissa on Linuxin kaltainen komentotulkki. Sitä ei voi käyttää valmiiksi, mutta voit asentaa Android Terminal Emulatorin kaltaisen sovelluksen päästääksesi käsiksi tähän terminaaliympäristöön.

Mainos

Oletusarvoisesti täällä ei voi tehdä paljoakaan. Terminaali toimii edelleen rajoitetussa ympäristössä, joten et voi saada täyttä pääkäyttäjän komentotulkkia ilman Android-laitteesi juurruttamista. Monet tavalliset komennot, joita saatat tarvita, eivät ole käytettävissä – siksi ihmiset, jotka roottaavat laitteensa, asentavat yleensä BusyBox-sovelluksen, joka asentaa monia komentorivin apuohjelmia. Sovellukset käyttävät näitä apuohjelmia tehdäkseen asioita pääkäyttäjäoikeuksillaan.

android-terminal-emulator-uname

Miksi et voi ajaa Android-ohjelmistoja työpöytä-Linuxissa

RELATED: Kuinka pelata Android-pelejä (ja ajaa Android-sovelluksia) Windowsissa

Linux ei sisällä Dalvik-virtuaalikonetta, joten sillä ei voi ajaa Android-sovelluksia. Dalvik-virtuaalikonetta ja kaikkia muita Androidin ohjelmistoja ei voi yksinkertaisesti pudottaa työpöydän Linux-koneeseen – sinun pitäisi tehdä enemmän työtä saadaksesi Android-sovellukset tulostumaan tavallisen työpöydän ikkunaan esimerkiksi Xorgin kautta. Teoriassa kehittäjät voisivat riittävällä työllä saada Dalvikin toimimaan työpöytä-Linuxissa, jotta työpöytä-Linux-käyttäjät voisivat käyttää Android-sovelluksia työpöydällään. Nykyään uinuva Ubuntu for Android -tuote yritti tehdä jotain tällaista, integroimalla Ubuntun ja Androidin puhelimessa ja sallimalla näiden Android-sovellusten suorittamisen Ubuntun työpöydällä.

BlueStacks ja muut Android-sovellusemulaattorit yrittävät tehdä tämän Windowsille ja Macille. Ne ajavat Androidia virtuaalilaitteistossa virtuaalikoneessa, mikä mahdollistaa Android-sovellusten ajamisen – suorituskykysyistä kärsien – työpöydälläsi. Nämä ratkaisut eivät kuitenkaan ole osoittautuneet kovin suosituiksi.

apk-on-desktop-linux

Googlen Chrome OS perustuu myös Linuxiin. Androidin tavoin Chrome OS ei tarjoa tavallista X-ikkunajärjestelmää, joten tavallisia Linux-sovelluksia ei voi ajaa Chrome OS:ssä. Toisin kuin Android, Chrome OS on lähempänä tavallisia työpöytä-Linux-jakeluja, joten voit käyttää kehittäjätilaa puuttuvien Linux-työpöytäohjelmistojen asentamiseen.

Mainos

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

Chris Hoffman
Chris Hoffman on How-To Geek -lehden päätoimittaja. Hän on kirjoittanut teknologiasta yli vuosikymmenen ajan ja oli PCWorldin kolumnisti kahden vuoden ajan. Chris on kirjoittanut The New York Timesiin, häntä on haastateltu teknologia-asiantuntijana muun muassa Miamin NBC 6 -televisioasemilla ja hänen työstään on uutisoitu muun muassa BBC:ssä. Vuodesta 2011 lähtien Chris on kirjoittanut yli 2 000 artikkelia, joita on luettu lähes miljardi kertaa – ja tämä on vain täällä How-To Geekissä.Read Full Bio ”

Leave a Reply

Vastaa

Sähköpostiosoitettasi ei julkaista.