Android este Linux, dar nu GNU/Linux

Când cineva spune „Android nu este Linux”, de fapt confundă Linux (nucleul) cu GNU/Linux (ecosistemul). Android folosește nucleul Linux, deci este o distribuție Linux - doar că nu este GNU/Linux.

Această confuzie apare pentru că termenul „Linux” se folosește pentru a descrie trei lucruri diferite, iar oamenii nu fac diferența între ele.

Linux x3

Sigur vă întrebați care sunt cele trei înțelesuri ale termenului „Linux”. Haideți să le vedem mai jos.

1. Linux ca nucleu (kernel)

Nucleul Linux este doar o parte din sistem; este componenta care comunică direct cu hardware-ul. Acest nucleu este folosit de: Android, Ubuntu, Fedora, Alpine Linux, sisteme embedded, servere și supercomputere.

2. GNU/Linux - ecosistemul tradițional

Când spunem „Linux”, de obicei ne referim la GNU/Linux, care conține: nucleul Linux, utilitarele GNU (bash, coreutils, findutils etc.), glibc - biblioteca C standard, manageri de pachete (APT, DNF, Pacman) și medii de lucru (GNOME, KDE, Xfce).

Exemple de astfel de sisteme GNU/Linux sau distribuții sunt: Ubuntu, Fedora, Arch Linux, Debian și multe altele.

3. Linux non-GNU - ecosisteme alternative

Există distribuții care folosesc nucleul Linux, dar nu ecosistemul GNU.

Distribuții | Bibliotecă C | Utilitare | Runtime | Scop
Alpine Linux | musl libc | BusyBox | Aplicații native | General, containere
Android | Bionic libc | Utilitare personalizate | ART/Dalvik VM | Mobile

Android vs GNU/Linux

Android folosește nucleul Linux, dar înlocuiește complet ecosistemul GNU. Android înlocuiește glibc cu Bionic libc, care este o bibliotecă optimizată pentru dispozitive mobile, cu licență BSD în loc de GPL. Bionic libc este optimizată pentru performanță și un consum redus de memorie.

Utilitarele GNU sunt înlocuite cu altele personalizate, minimaliste și adaptate pentru Android și dispozitive mobile.

Android folosește ART Runtime, unde aplicațiile rulează în mașina virtuală ART și sunt izolate în sandbox-uri. Aplicațiile au un format specific (APK/AAB) în loc să fie executabile tradiționale.

Diferă și procesul init, care nu este unul tradițional; Android are propriul proces init și fișiere init.rc.

Google nu folosește nucleul Linux original, ci o versiune modificată puternic, cu Binder IPC, care este un mecanism rapid și securizat de comunicare între procese, esențial pentru Android. ashmem/ion se ocupă de gestionarea memoriei partajate între aplicații, optimizată pentru dispozitive cu memorie limitată. LMKD (Low Memory Killer Daemon) este un proces care închide aplicații când memoria devine insuficientă. SELinux enforcing se ocupă de securitatea strictă la nivel de aplicații și servicii, cu politici specifice Android. Wakelocks gestionează stările de alimentare pentru a optimiza autonomia bateriei.

Alpine Linux - exemplul perfect

Pentru a înțelege poziția Android, trebuie să privim la Alpine Linux.

Acest sistem de operare folosește nucleul Linux, nu folosește ecosistemul GNU, nu folosește glibc și este considerat o distribuție Linux.

Dacă Alpine este acceptat ca distribuție Linux fără să fie GNU/Linux, atunci și Android trebuie considerat distribuție Linux.

Mitul touch

În această discuție despre Android vs Linux sau GNU/Linux se spune „Linux este pentru mouse și tastatură, Android pentru touch”.

Aceasta este o generalizare greșită, pentru că GNOME Shell are suport nativ pentru touchscreen, KDE Plasma oferă scaling adaptiv și interfață touch, Ubuntu Touch a fost creat special pentru dispozitive mobile.

Există laptopuri cu Linux și touchscreen. Interfața nu definește sistemul de operare – nucleul și ecosistemul îl definesc.

În concluzie, Android este o distribuție Linux pentru că folosește nucleul Linux ca fundație.

Android nu este GNU/Linux pentru că folosește un ecosistem complet diferit - Bionic libc, ART runtime și utilitare personalizate.

La fel cum Alpine Linux este o distribuție Linux non-GNU, și Android este o distribuție Linux non-GNU, doar că specializată pentru dispozitive mobile.

Deci, data viitoare când cineva spune „Android nu este Linux”, poți răspunde: „Android este Linux, doar că nu este GNU/Linux - la fel ca Alpine”.

Articol din data 21-11-2025