Android je založen na Linuxu, ale co to znamená?

  • Chris Hoffman

    @chrisbhoffman

  • Aktualizováno 12. července 2017, 22:20 EDT

android-linux

Android je sice založen na Linuxu, ale není založen na typu systému Linux, který jste možná používali na svém počítači. Na typických linuxových distribucích nemůžete spouštět aplikace pro Android a nemůžete na něm spouštět programy pro Linux, které znáte.

Linux tvoří základní část systému Android, ale společnost Google do něj nepřidala veškerý typický software a knihovny, které najdete v linuxových distribucích, jako je například Ubuntu. To je velký rozdíl.

„Linux“ vs. linuxové jádro

SOUvisející: „Linux“ není jen Linux: 8 částí softwaru, které tvoří linuxové systémy

Velký rozdíl zde spočívá v tom, co rozumíme pod pojmem Linux. Lidé používají pojem „Linux“ ve významu mnoha různých věcí. V nejzákladnější podobě znamená Linux jádro Linuxu. Jádro je základní součástí každého operačního systému.

Reklama

Rozšíření Linuxu označujeme také jednoduše jako „Linux“. Distribuce Linuxu však nejsou jen jádro Linuxu. Obsahují mnoho dalších částí softwaru, například nástroje GNU shell, grafický server Xorg, pracovní prostředí GNOME, webový prohlížeč Firefox atd. Proto si někteří lidé myslí, že by se pro „linuxové distribuce“, jako je Ubuntu, Mint, Debian, Fedora, Arch, openSUSE a další, měl používat termín GNU/Linux.

Android používá pod kapotou linuxové jádro. Protože je Linux open-source, mohli vývojáři systému Android společnosti Google upravit linuxové jádro podle svých potřeb. Linux poskytuje vývojářům systému Android předpřipravené, již udržované jádro operačního systému, se kterým mohou začít, takže nemusí psát vlastní jádro. Takto je postaveno mnoho různých zařízení – například PlayStation 4 používá open-source jádro FreeBSD, zatímco Xbox One používá jádro Windows NT, které se nachází v moderních verzích Windows.

V Nastavení systému Android v části O telefonu nebo O tabletu dokonce uvidíte verzi linuxového jádra, která na vašem zařízení běží.

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

Rozdíly

Související:

O tom, zda lze systém Android považovat za „linuxovou distribuci“, se vedou diskuse. Používá linuxové jádro a další software, ale neobsahuje většinu softwaru, který linuxové distribuce obvykle obsahují.

Reklama

Při spuštění zařízení se systémem Android se načte linuxové jádro stejně jako v linuxové distribuci. Většina ostatního softwaru je však odlišná. Android neobsahuje knihovnu GNU C (glibc), která se používá ve standardních linuxových distribucích, ani všechny knihovny GNU, které najdete v běžné linuxové distribuci. Neobsahuje ani X server, jako je Xorg, takže nelze spouštět standardní grafické linuxové aplikace.

Spíše než typické linuxové aplikace používá Android virtuální stroj Dalvik, který v podstatě umožňuje spouštět aplikace napsané v jazyce Java. Tyto aplikace jsou zaměřeny spíše na zařízení se systémem Android a rozhraní pro programování aplikací (API), které systém Android poskytuje, než aby byly zaměřeny na Linux obecně.

android-architecture

Proč nelze na systému Android spouštět desktopový software pro Linux

SOUvisející:

Protože Android neobsahuje grafický server X ani všechny standardní knihovny GNU, nelze na něm jednoduše spouštět linuxové aplikace. Musíte spouštět aplikace napsané speciálně pro Android.

Android má shell podobný tomu, který najdete v Linuxu. Neexistuje žádný způsob, jak k němu získat přístup out-of-the-box, ale můžete si nainstalovat aplikaci, jako je Android Terminal Emulator, a získat tak přístup k tomuto terminálovému prostředí.

Reklama

Ve výchozím nastavení zde toho moc dělat nemůžete. Terminál bude stále běžet v omezeném prostředí, takže bez rootnutí zařízení se systémem Android nemůžete získat plnohodnotný root shell. Mnoho standardních příkazů, které byste mohli potřebovat, není k dispozici – proto si lidé, kteří mají rootnuté zařízení, obvykle instalují aplikaci BusyBox, která instaluje mnoho nástrojů příkazového řádku. Tyto nástroje využívají aplikace k provádění činností s právy roota.

android-terminal-emulator-uname

Proč nelze spouštět software pro Android na stolním Linuxu

SOUvisející: Jak hrát hry pro Android (a spouštět aplikace pro Android) ve Windows

Linux neobsahuje virtuální stroj Dalvik, takže na něm nelze spouštět aplikace pro Android. Virtuální stroj Dalvik a veškerý další software systému Android nelze jednoduše přenést na stolní počítač se systémem Linux – museli byste vynaložit více práce, aby se například aplikace pro Android vypisovaly do okna na standardní ploše prostřednictvím Xorg. Teoreticky, s dostatkem práce, by vývojáři mohli Dalvik spustit na desktopovém Linuxu, aby uživatelé desktopového Linuxu mohli spouštět aplikace pro Android na svých desktopech. O něco takového se pokoušel dnes již neexistující produkt Ubuntu for Android, který integroval Ubuntu a Android v telefonu a umožňoval spouštění těchto aplikací pro Android na desktopu Ubuntu.

BlueStacks a další emulátory aplikací pro Android se o to pokoušejí pro Windows a Mac. Spouštějí systém Android na virtuálním hardwaru ve virtuálním počítači, což jim umožňuje spouštět aplikace pro Android – se snížením výkonu – na stolním počítači. Tato řešení se však neukázala jako příliš oblíbená.

apk-on-desktop-linux

Systém Chrome OS společnosti Google je také založen na Linuxu. Stejně jako Android ani Chrome OS neposkytuje standardní okenní systém X, takže standardní linuxové aplikace nelze na Chrome OS spustit. Na rozdíl od Androidu má Chrome OS blíže ke standardním desktopovým distribucím Linuxu, takže k instalaci chybějícího desktopového softwaru můžete použít vývojářský režim.

Reklama

Obrázek: ranti na Flickru, Anatomie a fyziologie Androidu

Chris Hoffman
Chris Hoffman je šéfredaktorem How-To Geek. O technologiích píše již více než deset let a dva roky byl sloupkařem časopisu PCWorld. Chris psal pro deník The New York Times, jako odborník na technologie poskytoval rozhovory televizním stanicím, například miamské NBC 6, a o jeho práci informovaly zpravodajské stanice, například BBC. Od roku 2011 Chris napsal více než 2 000 článků, které byly přečteny téměř miliardkrát – a to jen zde na How-To Geek.“

Leave a Reply

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.