Android este bazat pe Linux, dar ce înseamnă asta?

  • Chris Hoffman

    @chrisbhoffman

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

android-linux

Android poate fi bazat pe Linux, dar nu se bazează pe tipul de sistem Linux pe care l-ați folosit probabil pe PC. Nu puteți rula aplicații Android pe distribuții Linux tipice și nu puteți rula programele Linux cu care sunteți familiarizați pe Android.

Linux constituie partea centrală a Android, dar Google nu a adăugat toate programele și bibliotecile tipice pe care le găsiți pe o distribuție Linux precum Ubuntu. Acest lucru face toată diferența.

„Linux” vs. Kernelul Linux

RELATED: „Linux” nu este doar Linux: 8 bucăți de software care alcătuiesc sistemele Linux

Marea diferență aici se reduce la ceea ce înțelegem prin Linux. Oamenii folosesc termenul „Linux” pentru a desemna multe lucruri diferite. La modul cel mai elementar, Linux înseamnă nucleul Linux. Un nucleu este partea centrală a oricărui sistem de operare.

Publicitate

De asemenea, ne referim la distribuțiile Linux ca fiind pur și simplu „Linux”. Cu toate acestea, distribuțiile Linux nu reprezintă doar nucleul Linux. Ele conțin multe alte bucăți de software, cum ar fi utilitățile GNU shell, serverul grafic Xorg, biroul GNOME, browserul web Firefox și așa mai departe. Acesta este motivul pentru care unii oameni cred că termenul GNU/Linux ar trebui folosit pentru „distribuții Linux” precum Ubuntu, Mint, Debian, Fedora, Arch, openSUSE și altele.

Android folosește nucleul Linux sub capotă. Deoarece Linux este open-source, dezvoltatorii Android de la Google ar putea modifica nucleul Linux pentru a se potrivi nevoilor lor. Linux le oferă dezvoltatorilor Android un nucleu de sistem de operare pre-construit, deja întreținut, cu care să înceapă, astfel încât să nu fie nevoiți să își scrie propriul nucleu. Acesta este modul în care sunt construite multe dispozitive diferite – de exemplu, PlayStation 4 folosește nucleul FreeBSD open-source, în timp ce Xbox One folosește nucleul Windows NT care se găsește în versiunile moderne de Windows.

Vă veți vedea chiar și versiunea de nucleu Linux care rulează pe dispozitivul dvs. în secțiunea Despre telefon sau Despre tabletă din Setări Android.

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

Diferențele

RELATED: Ce este o distribuție Linux și care sunt diferențele dintre ele?

Există o anumită dezbatere cu privire la faptul dacă Android se califică drept „distribuție Linux”. Acesta folosește nucleul Linux și alte programe, dar nu include o mare parte din programele pe care distribuțiile Linux le includ în mod normal.

Publicitate

Când porniți un dispozitiv Android, nucleul Linux se încarcă la fel ca pe o distribuție Linux. Cu toate acestea, o mare parte din celelalte software-uri sunt diferite. Android nu include biblioteca GNU C (glibc) utilizată pe distribuțiile Linux standard și nici nu include toate bibliotecile GNU pe care le găsiți pe o distribuție Linux obișnuită. De asemenea, nu include un server X, cum ar fi Xorg, astfel încât nu puteți rula aplicații grafice Linux standard.

În loc să ruleze aplicații Linux tipice, Android utilizează mașina virtuală Dalvik pentru a rula, în esență, aplicații scrise în Java. Aceste aplicații sunt destinate dispozitivelor Android și interfețelor de programare a aplicațiilor (API) pe care Android le oferă, mai degrabă decât să fie destinate Linux-ului în general.

android-architecture

De ce nu puteți rula software desktop Linux pe Android

RELATED: Ce este Unix și de ce contează?

Pentru că Android nu include un server X grafic sau toate bibliotecile GNU standard, nu puteți rula pur și simplu aplicații Linux pe Android. Trebuie să rulați aplicații scrise special pentru Android.

Android are un shell asemănător cu cel pe care îl veți găsi pe Linux. Nu există nicio modalitate de a-l accesa out-of-the-box, dar puteți instala o aplicație precum Android Terminal Emulator pentru a avea acces la acest mediu terminal.

Publicitate

În mod implicit, nu puteți face prea multe aici. Terminalul va rula în continuare într-un mediu restricționat, astfel încât nu puteți obține un shell complet de root fără a vă roota dispozitivul Android. Multe comenzi standard de care ați putea avea nevoie nu sunt disponibile – acesta este motivul pentru care persoanele care își înrădăcinează dispozitivul instalează în general aplicația BusyBox, care instalează multe utilități de linie de comandă. Aceste utilitare sunt folosite de aplicații pentru a face lucruri cu ajutorul accesului root.

android-terminal-emulator-uname

De ce nu puteți rula software Android pe Desktop Linux

RELATED: How to Play Android Games (and Run Android Apps) on Windows

Linux nu include mașina virtuală Dalvik, deci nu poate rula aplicații Android. Mașina virtuală Dalvik și toate celelalte programe Android nu pot fi pur și simplu aruncate pe o mașină desktop Linux – ar trebui să depuneți mai multă muncă pentru a face ca aplicațiile Android să iasă într-o fereastră de pe un desktop standard prin Xorg, de exemplu. Teoretic, cu suficientă muncă, dezvoltatorii ar putea face ca Dalvik să ruleze pe desktop Linux, astfel încât utilizatorii de desktop Linux să poată rula aplicații Android pe desktopurile lor. Produsul Ubuntu for Android, acum în desființare, a încercat să facă așa ceva, integrând Ubuntu și Android pe un telefon și permițând ca acele aplicații Android să ruleze pe desktop-ul Ubuntu.

BlueStacks și alte emulatoare de aplicații Android încearcă să facă acest lucru pentru Windows și Mac. Aceștia rulează Android pe hardware virtual într-o mașină virtuală, permițându-le să ruleze aplicații Android – cu o penalizare de performanță – pe desktop. Totuși, aceste soluții nu s-au dovedit a fi foarte populare.

apk-on-desktop-linux

Sistemul de operare Chrome OS de la Google se bazează, de asemenea, pe Linux. Ca și Android, Chrome OS nu oferă un sistem de ferestre X standard, astfel încât aplicațiile Linux standard nu pot rula pe Chrome OS. Spre deosebire de Android, Chrome OS este mai apropiat de distribuțiile Linux desktop standard, astfel încât puteți utiliza modul dezvoltator pentru a instala software-ul desktop Linux care lipsește.

Publicitate

Creditul imaginii: ranti on Flickr, Anatomy and Physiology of Android

Chris Hoffman
Chris Hoffman este redactor-șef al How-To Geek. Scrie despre tehnologie de peste un deceniu și a fost editorialist la PCWorld timp de doi ani. Chris a scris pentru The New York Times, a fost intervievat în calitate de expert în tehnologie la posturi de televiziune precum NBC 6 din Miami, iar activitatea sa a fost acoperită de agenții de presă precum BBC. Din 2011, Chris a scris peste 2.000 de articole care au fost citite de aproape un miliard de ori – și asta doar aici, la How-To Geek.Read Full Bio ”

Leave a Reply

Lasă un răspuns

Adresa ta de email nu va fi publicată.