Android se zasniva na Linuksu, ali šta to znači?

Android se zasniva na Linuksu, ali šta to znači?

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4575

Originalni članak: Android is Based on Linux, But What Does That Mean?
Autor: Chris Hoffman
Prevod: E.L.I.T.E (pomogli: higuy, drummer, bocke, Srki94)
______________________________________________________________________

Uvod

Android se zasniva na Linuksu, ali ne na tipu Linuks sistema koji ste možda koristili na svom PC-u. Ne možete pokrenuti Android aplikacije na tipičnoj Linuks distribuciji kao što ne možete pokrenuti ni Linuks programe na koje ste navikli na Android-u.

Linuks čini jezgro Android operativnog sistema, ali Google nije dodao tipičan softver i biblioteke koje ćete pronaći na Linuks distribucijama kao što je naprimer Ubuntu. Ovo čini svu razliku.


Slika: Tux in Android Robot Costume 1


"Linuks" vs. Linuks jezgro (kernel)

Velika razlika ovde se svodi na to na šta mislimo kada kažemo Linuks. Ljudi koriste termin "Linuks" da imenuju puno različitih stvari. U najosnovnijem smislu, pojam Linuks se odnosi na Linuks jezgro. Jezgro je ključni element bilo kog operativnog sistema.

Linuks distribucije takođe nazivamo jednostavno "Linuks". Međutim, Linuks distribuciju ne čini samo Linuks kernel. Ona sadrži veliki broj drugih aplikacija , kao što su GNU-ove alatke, Xorg grafički server, GNOME okruženje, Firefox web pretraživač itd. Ovo je razlog zbog kog većina ljudi misli da bi termin "GNU/Linuks" trebao da se koristi za imenovanje "Linuks distribucija" poput Ubuntu-a, Mint-a, Debian-a, Fedora-e, Arch-a, OpenSUSE-a i ostalih.

Android 'ispod haube' koristi Linuks jezgro. Pošto je Linuks otvorenog koda, Guglovi Android programeri mogu da izmene Linuks jezgro za svoje potrebe. Linuks daje Android programerima već izgrađeno i održavano jezgro operativnog sistema te oni ne moraju ispočetka da pišu svoje. Ovo je način na koji su mnogi uređaji razvijeni - npr. , PlayStation 4 koristi FreeBSD jezgro otvorenog koda, dok Xbox One koristi Windows NT jezgro koje postoji u modernim verzijama Windows-a.

Čak ćete moći da vidite i verziju kernela koja se pokreće na vašem uređaju pod delom 'About phone' ili 'About tablet' u Android podešavanjima.


Slika: Arhitektura Linuks operativnog sistema


Razlike

Postoji dosta debata u kojima se Android karakteriše kao "Linuks distribucija". On koristi Linuks jezgro ostali softver, ali ne sadrži većinu softvera koje uobičajeno sadrže Linuks distribucije.

Kada pokrenete Android na nekom uređaju, Linuks jezgro se učitava baš kao što bi se učitavao i na nekoj Linuks distribuciji. Međutim, većina ostalog softvera je različita. Android ne koristi GNU-ovu C biblioteku (glibc) koju koriste standardne Linuks distribucije, niti uključuje sve GNU biblioteke koje se mogu naći u tipičnoj Linuks distribuciji. Takođe ne sadrži ni X server poput Xorg-a pa ne možete pokretati grafičke Linuks aplikacije na njemu.

Umesto da pokreće tipične Linuks aplikacije, Android koristi Dalvik virtuelnu mašinu da, u suštini, pokrene aplikacije pisane u Javi. Ove aplikacije su više usmerene ka Android uređajima i aplikacionim programskim interfejsima (API) koje omogućava Android nego ka Linuksu u opštem smislu.


Slika: Arhitektura Android operativnog sistema.


Zašto ne možete pokretati Linuks desktop aplikacije na Androidu?

Razlog je taj što Android ne poseduje grafički X server i sve standardne GNU biblioteke. Možete pokretati aplikacije pisane isključivo za Android.

Android ne poseduje komandnu ljusku kao onu koju možete pronaći na Linuksu. Ne postoji način za pristup bez dodatnih konfiguracija, ali možete instalirati aplikacije poput "Android Terminal Emulator" da bi dobili pristup konzolnom okruženju.

Podrazumevano ne postoji puno stvari koje možete uraditi na tom polju. Terminal će ionako da se pokrene u ograničenom okruženju, pa ne možete dobiti kompletan pristup preko komandne ljuske, osim ako rutujete svoj Android uređaj. Mnogo standardnih komandi koje će vam možda trebati nisu dostupne - to je razlog zbog kog korisnici koji rutuju svoj uređaj obično instaliraju BusyBox aplikaciju koja instalira puno konzolnih alatki. Android aplikacije koriste ove alatke da odrade aktivnosti preko njihovog root pristupa.


Slika: Terminal emulator for Android


Zašto ne možete pokretati Android aplikacije na Linuks desktopu?

Linuks ne poseduje u sebi Dalvik virtuelnu mašinu te na njemu ne može pokretati Android aplikacije. Dalvik virtuelna mašina i ostali alati koje koristi Android, ne mogu biti tek tako 'ubačeni' u Linuks - postoji dosta posla čak i za jednostavno prikazivanje aplikacija u standardnom desktop prozoru kroz, na primer, Xorg. Teoretski, uz ogroman trud, programeri mogu podesiti Dalvik na Linuksu tako da i Linuks korisnici mogu pokretati aplikacije za Android na desktopu. Sada neaktivan projekat Ubuntu for Android je pokušaj da se učini nešto slično, integrisanjem Ubuntu-a i Android-a na mobilnom uređaju i dozvoljavanjem pokretanja Android aplikacija na ovoj distribuciji.

BlueStacks i ostali emulatori Android aplikacija omogućavaju delimično da se ovo postigne na Windows-u i OS X-u. One pokreću Android na virtuelnom hardveru u virtuelnim mašinama omogućavajući time da se postignu gotovo isti rezultati kao na desktopu. Ove metode međutim se nisu pokazale kao vrlo popularne.


Slika: Bluestacks (autor: srki94)

______________________________________________________________________

Guglov Chrome OS je takođe baziran na Linuksu. Kao i Android, Chrome OS ne nudi standardni X sistem prozora, pa se standardne Linuks aplikacije ne mogu pokretati na njemu. Za razliku od Androida, Chrome OS je bliži standardnim desktop Linuks distribucijama pa možete koristiti programerski režim da bi instalirali softver sa Linuksa koji nedostaje.


Slika: Chromium OS (Updated)



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Brok  Male
  • Moderator foruma
  • Mihajlo Bogdanović
  • Linux driver - fighter - warrior
  • Pridružio: 04 Maj 2005
  • Poruke: 3256

Meni nikako nije jasno zašto je izostavljen Linuks u nazivu Android.
Valjda bi trebao da se zove Linux Android.



offline
  • Fil  Male
  • Legendarni građanin
  • Pridružio: 11 Jun 2009
  • Poruke: 16586

Zbog toga što za n00b-ove Linux znači "nešto strašno". Koliko ljudi zna vezu Androida i Linuxa? Za korisnike je Android "program", "softver" i to je to.

Google nastupa mudro u svojoj strategiji, izbegava sve što može da zvuči komplikovano i anatemistički.

offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14822
  • Gde živiš: Niš

Fil ::Google nastupa mudro u svojoj strategiji, izbegava sve što može da zvuči komplikovano i anatemistički.I to, a i verujem da su hteli nešto originalno.

offline
  • bocke  Male
  • Moderator foruma
  • Glavni moderator Linux foruma
  • Veliki Pingvin
  • Guru
  • Pridružio: 16 Dec 2005
  • Poruke: 12509
  • Gde živiš: Južni pol

U stvari, Android uopšte nije potekao u Google-u. Google ga je dobio kroz akviziciju Android Inc 2005. godine. Već tada je bio ustaljen naziv Android. Wink

offline
  • LoXo  Male
  • Super građanin
  • Pridružio: 14 Okt 2011
  • Poruke: 1212

Citat:
Андроид је развила истоимена компанија (енгл. Android, Inc.) коју је компанија Гугл финансијски подржавала, а касније и купила, 2005. године.


http://skr.rs/QVb

offline
  • Brok  Male
  • Moderator foruma
  • Mihajlo Bogdanović
  • Linux driver - fighter - warrior
  • Pridružio: 04 Maj 2005
  • Poruke: 3256

Fil ::Zbog toga što za n00b-ove Linux znači "nešto strašno". Koliko ljudi zna vezu Androida i Linuxa? Za korisnike je Android "program", "softver" i to je to.

Mislim da bi po pravilu trebao biti Linux Android, i to nisam ja smislio vec tako stoji u GPL-u. Mada, tu pandorinu kutiju je prvi otvorio Ubuntu. Nigde nema da se Ubuntu (po meni najpravilnije GNU/Linux) Linux, a trebalo bi biti, kao i gro distribucija koje imaju ako ne GNU onda Linux uz svoj naziv.

Hvala ekipi koja je radila prevod Ziveli , samo sam letimicno preleteo clanak jer nisam kuci, pa cu ga na tanate procitati. Zagrljaj

offline
  • Programer
  • Pridružio: 23 Maj 2012
  • Poruke: 4575

Brok ::Mislim da bi po pravilu trebao biti Linux Android, i to nisam ja smislio vec tako stoji u GPL-u. Mada, tu pandorinu kutiju je prvi otvorio Ubuntu. Nigde nema da se Ubuntu (po meni najpravilnije GNU/Linux) Linux, a trebalo bi biti, kao i gro distribucija koje imaju ako ne GNU onda Linux uz svoj naziv.

Po mišljenju Linux fondacije, Android jeste Linux distribucija. Pojedini Google inžinjeri pak tvrde da nije jer ne sadrži neke od suštinskih komponenti Linux distribucija kao što su GNU C biblioteka i još neke.

offline
  • Brok  Male
  • Moderator foruma
  • Mihajlo Bogdanović
  • Linux driver - fighter - warrior
  • Pridružio: 04 Maj 2005
  • Poruke: 3256

E.L.I.T.E. ::
Po mišljenju Linux fondacije, Android jeste Linux distribucija. Pojedini Google inžinjeri pak tvrde da nije jer ne sadrži neke od suštinskih komponenti Linux distribucija kao što su GNU C biblioteka i još neke.

To je i za očekivati, i pored toga što Google tvdi, ja sam ipak član Linuks fondacije, te mi je njihov stav bliži. Very Happy


Ziveli

Ko je trenutno na forumu
 

Ukupno su 707 korisnika na forumu :: 4 registrovanih, 3 sakrivenih i 700 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: darios, milenko crazy north, vladaa012, zicko.spacek