Informatički rječnik

Mobilni uređaji - Android operativni sustav

 Pojmovi

 
 Prema početku  |  1  |  2  |  3  |  4  |  5  |  Prema kraju

 Android - logo      Mobilnim uređajima i njihovom programskom potporom bave se mnoge firme. Firmi Android Inc. osnovanoj 2003. godine osnovna djelatnost bila je razvoj programske potpore za pametne mobilne uređaje. Dvije godine potom Google je kupio Android da bi 2007. godine inicirao osnivanje konzorcija OHA (Open Handset Alliance) s ciljem stvaranja javnog standarda za mobilne uređaje. Udruzi su odmah pristupile 34 firme različitih djelatnosti glede mobilne industrije poput proizvođača mobilnih telefona, programera aplikacija, mobilnih operatera i sličnih, da bi ubrzo imala preko 80 članova. Odmah po osnivanju udruženja, OHA predstavlja mobilnu platformu otvorenog koda baziranu na Linux jezgri - Android, projekt otvorenog koda (open source project), ali proizvođačima uređaja nije dozvoljeno korištenje Android zaštićenog imena ukoliko Google ne certificira uređaj kao kompatibilan prema ustanovljenoj CDD normi (Compatibility Definition Document). Android je modularan i prilagodljiv pa se koristi i za uređaje kao što su čitači elektronskih knjiga, mobilni telefoni, prijenosnici, te multimedijski uređaji i drugo. Upravo posljednje navedeno je razlog što se je autor ovih redaka odlučio opisati ovaj operativni sustav, a ne iOS koji je 'zatvoren' po svim elementima od strane kompanije Apple.

Operativni sustav baziran je na programskom jeziku Java, ima ograničene resurse u pogledu procesne moći i memorijskih kapaciteta naspram osobnih računala jer su jezgra i arhitektura sustava prilagođeni za pokretanje i rad u ograničenim uvjetima kakvo je mobilno okruženje. Osnovni dijelovi ovog okruženja su programske aplikacije koje koriste aplikacijske biblioteke (framework), a na osnovama sistemskih biblioteka i sistemskih programskih rutina koje rabe Linux jezgru, kako prikazuje naredna slika.

 Ahitektura Android OS
Slika 3.1 Arhitektura Android operativnog sustava.

Jezgra operativnog sustava brine o upravljanju memorijom, procesima, mrežnim sučeljima i ostalim sustavima na sklopovskom nivou, obrađuje osnovne usluge sustava i djeluje kao HAL (Hardware Abstraction Layer), međusloj između fizičkog sklopovlja i Android operativnog sustava. Tvorcima programske potpore jezgra nije dostupna. Sistemske biblioteke napisane su u C i C++ programskim jezicima zbog brzine izvođenja te su prilagođene svakom pojedinačnom uređaju. posebna osobitost je 'Dalvik virtualni sustav' (prema imenu razvojno inženjera i firmi Google) koji dozvoljava izvršavanje više virtualnih strojeva odjednom kako bi se maksimalno iskoristio potencijal Linux jezgre. Odnosno, svaka aplikacija izvršava se u svom virtualnom okruženju. Sustav aplikacijskih biblioteka podloga je za razvoj korisničkih aplikacija. Aplikacije koje koriste operativni sustavu Android pripadaju najvišem sloju u prikazanoj arhitekturi. Za razliku od klasičnih aplikacija na stolnim računalima koje se paralelno izvode i imaju jednak prioritet, na ovoj platformi izvršava se jedna primarna aplikacija koja zauzima cijeli ekran.

Android operativni sustav temelji na modificiranoj Linux jezgri (kernel) 2.6, nekoliko upravljačkih programa i biblioteka je izmijenjeno ili novo razvijeno, ne sadrži izvorni X-Window sustav, niti podržava cijeli skup standardnih GNU biblioteka, a sve u svrhu da se omogući učinkovit rad Android mobilnih uređaja.

Najveća razlika između Linux i Android sustava je u Java sloju apstrakcije ugrađenom u Android. Android aplikacije su dalje od same jezgre nego u Linuxu (imaju duži kod put do OS sloja). U Linuxu, korisničke aplikacije (preko knjižnica i podsustava za sistemske pozive) imaju izravan pristup jezgri. U Android, jezgra je gotovo skrivena duboko u Android radnom okruženju, kao što je prikazano na slici 3.2.

 Android Java Native Interface
Slika 3.2 JNI (Java Native Interface) sučelje.  

Linux operativni postava nativno sadrži vrlo bogatu infrastrukturu biblioteka i razvojnih alata nedostupnih Androidu. Najveća razlika između Linux i Android sustava je Java sloj apstrakcije ugrađen u Android. Android sustavi koriste vlastiti virtualni stroj (Virtual Machine - VM), poznat kao Dalvik Virtualni stroj (DVM). DVM koristi posebni kod, pa se izvorni Java kod ne može izvršiti na Android sustavu. DVM je visoko optimiziran kako bi se izvršavao što učinkovitije moguće na mobilnim uređajima, koji su obično opremljeni s dvojezgrenim ili četverojezgrenim CPU podsustav, ograničenim memorijskih resursa, bez prostora OS swap, i ograničenim kapacitetom baterije. DVM je implementiran na način da omogućava učinkovito izvršavanje više VM.

Just-in-time (JIT) prevodioc (compiler) ugrađen je u Android, prevodi Dalvik kod u mnogo učinkovitiji strojni kod. Java izvorno sučelje (JNI - Java Native Interface) predstavlja sučelje između Java koda izvršivog u JVM i izvornog koda koji se izvodi izvan JVM pri čemu Android koristi vlastitu C biblioteku - Bionic. Bionic biblioteka nije kompatibilna s Linuxom, i zauzima manje memorije. Za ilustraciju, Bionic biblioteka sadrži posebni instrukcijski niz (thread) koja provodi optimizaciju zauzeća memorije za svaki niz i smanjuje vrijeme pokretanja novih nizova.

Zaključno, glavne komponente koje čine Android operativni okoliš vrlo su impresivne, a brza evolucija Android sustava moguća je zbog velikog napretka u radu Linux zajednice tijekom godina. Android nije Linux rješenje sam po sebi, ali se koristi modificirana Linux jezgra 2.6 koja čini Android okoliš vrlo operativnim. Dakle, Android je operativni sustav za mobile uređaje baziran na Linux jezgri, koja je za mobilne uređaje modificirana glede njihove bolje učinkovitosti.




 Prema početku  |  1  |  2  |  3  |  4  |  5  |  Prema kraju

 Početak
 Mobile  Informatička abeceda
 
Citiranje ove stranice:
Radić, Drago. " Informatička abeceda " Split-Hrvatska.
{Datum pristupa}. <http://www.informatika.buzdo.com/pojmovi/>.
Copyright © by Drago Radić. Sva prava pridržana. | Odgovornost