Android 4.4. i ART (Android Runtime)

art

U svojoj petogodišnjoj povijesti, Android se drastično mijenjao. Te promjene su bile vizualne, ali su neke od njih uključivale i preinake same baze operacijskog sustava. Ipak, jedna konstanta koja prati Android od samog početka je Dalvik.

Što je Dalvik?

Za detaljno objašnjenje što je točno Dalvik bilo bi potrebno napisati jako puno teksta, no pojednostavljeno, možemo reći da je Dalvik softver koji pokreće aplikacije na uređajima koji su pokretani Android operacijskim sustavom. Većina aplikacija koje se mogu pronaći na Googleovom Playu pisane su u Java programskom jeziku. Standardni Java kompajler pretvara Java kod u bajtkod te u konačnici bajtkod konvertira u niz dex datoteka koje se mogu pokretati u Dalvik Virtual Machine. Dalvik Virtual Machine ili ako vam je draže – Dalvik Virtualna Mašina (VM u daljnjem tekstu) je jako slična Javinoj verziji VM koja se nalazi na PC računalima i koja pokreće aplikacije u jar formatu.

Dalvik VM je nastala iz open source projekta, nazvanog Harmony kojemu je bio cilj prenijeti Javinu VM na mobilne uređaje, uz mogućnosti pokretanja nekoliko paralelnih instanci, kako bi se omogućio multitasking, a to sve uz maksimalnu uštedu energije. Očito je da je projekt Harmony uspio te se Dalvik VM nalazi na svim Android uređajima, ali  s obzirom na otvorenost projekta svoje mjesto je pronašla i na drugim uređajima, kao što je npr. BlackBerry PlayBook.

Treba napomenuti da se veliki spor između Googlea i Oraclea (vlasnik Jave) u većini i odvijao oko Dalvika, čime je Oracle tvrdio da je Dalvik samo prekopirana Javina VM. Kao što je poznato, Google se na sudu uspio obraniti te je dokazao da Dalvik i VM nisu jedno te isto.

Virtualne mašine

Mnogim čitateljima će pojam Virtualne Mašine biti poznat i iz stolnih računala. Na primjer, pomoću nje korisnici Mac OS-a bez većih problema mogu instalirati Windows ili od Linuxa i pokretati u novom prozoru unutar Mac OS-a.

“Glavne prednosti ovih programa su u tome što fizički odvajaju operacijske sustave. Tako primjerice, ako se na Windows računalu pokrene Mac OS pomoću VM te ako se na Windowsima nalazi neki trojan, virus ili slično, ne postoji mogućnost da on prijeđe na Mac OS.

Druga prednost je i u mogućnosti izvršavanja aplikacija koje su pisane za arhitekturu koja se ne nalazi fizički na računalu. Tako npr. ARM uređaji mogu pokretati aplikacije pisane za Intel arhitekturu.

Kako to točno radi na Androidu?

Nakon što je aplikacija postavljena na Play Store, ona je samo djelomično kompajirana od strane developera. Pokretanjem same aplikacije, Android OS ponovno prikuplja sve podatke, kompajlira ih u bajtkod i smješta u RAM memoriju te program počinje izvođenje. U ovisnosti o brzini glavnog procesora uređaja, ovaj korak može trajati dulje ili kraće. No jedno je sigurno – svakim pokretanjem aplikacije ova radnja kompajliranja se ponavlja, obavljaju se nepotrebni procesorski ciklusi čime se troši baterija uređaja.

Google ovo ipak nije napravio bez razloga, već je ovaj način rada omogućavao izvođenje aplikacija na raznim verzijama hardvera i arhitektura.

No, počevši od Androida 4.4, Google je smislio novi način koji će omogućiti pokretanje aplikacija na širokom spektru uređaja te je ugradio novi način kompajliranja aplikacija u Androidu – nazvanog ART. ART, skraćenica od Android Runtime, ima temeljni način rada potpuno drugačiji od Dalvika. ART radi na način da se u procesu instalacije bajtkod kompajlira u strojni kod, čime se aplikacije pretvaraju u nativne.

Ovime se gubi potreba za pokretanjem VM čime se i vrijeme pokretanja aplikacija značajno smanjuje, kao i samo vrijeme izvršavanja pojedinih operacija unutar aplikacije.

NEXUS-5-1

Na Nexusu 5 koji dolazi s KitKatom, korisnici imaju mogućnost izbora između nove metode kompajliranja i starog Dalvika, uz Googleovu napomenu da novi način kompajliranja još uvijek smatra eksperimentalnim prikazom te jasno daje do znanja da može dovesti do nestabilnosti cijelog sustava.

Sudeći prema prvim benchmarkovima, ART na KitKatu omogućuje pokretanje aplikacija i dvostruko brže, uz vrijeme izvršavanja koje je također duplo kraće u odnosu na Dalvik.

Ovo ukratko znači da će većina zahtjevnijih aplikacija biti izvršena prije, čime će sustav duže biti u idle modu, a to će svakako odlično djelovati na vrijeme trajanja baterije. Kao direktnu posljedicu i većina će uređaja s četverojezgrenim procesorima rjeđe istovremeno koristiti sve jezgre što će kao i u prethodnom slučaju rezultirati puno rjeđom potrebom za punjačem.

A nedostaci?

Uvijek postoji i onaj “ali”, no ipak drago nam je reći da u ovoj situaciji on nije previše značajan. Prvo što je negativno je da će nove aplikacije, kompajlirane ART metodom biti 10 do 20% veće u odnosu na Dalvik varijante. To znači da ako je aplikacija prilagođena za Dalvik bila velika 10 MB, za ART će njezina veličina doseći do 12 MB.

Razlog ovome je taj što je strojni kod veći od samog bajtkoda jer se svaki bajt bajtkoda prevodi u nekoliko instrukcija strojnog koda.

Druga negativna strana je u povećanju vremena potrebnog za instalaciju aplikacija. Za vrlo velik broj manjih aplikacija, nećete primijetiti razliku u vremenu instaliranja, no za neke veće ono će biti ponešto duže.

Ove dvije negativne stvari su svakako minorne, ako pogledamo koje prednosti Android korisnici mogu imati od ART-a. Fluidnost i dulje trajanje baterije u odnosu na nešto dulje vrijeme potrebno za instalaciju aplikacija i ponešto veći prostor potreban za njih je mala cijena za ove prednosti.

Čak i sam Google priznaje da je ART još uvijek eksperimentalna mogućnost te da mu je potrebno još dorada i optimizacija. Bez obzira na to, sama tehnologija nudi odlične mogućnosti, a kako će se one pokazati u praksi svakako možete čitati u nadolazećim testovima mobitela s Androidom 4.4. na našem portalu.

           






 

12 komentara na Android 4.4. i ART (Android Runtime)

 
  • Dale :

    Odlican clanak,,svaka cast, tako nastavite

  • powerabuser :

    Inače na stranici
    http://www.androidruntime.com/list
    imate listu aplikacija koje su korisnici testirali s uključenim ART-om i već sada je ta kompatibilnost blizu 80 % što je prilično dobro za ovaj stadij ART-a(beta software).

  • kmica :

    Android stvarno napreduje dobro ka ispoliranosti OS-a, sviđa mi se sve što je povezano sa produljenjem vijeka baterije jer to je jedina stavka miljama iza ostalih komponenti!

  • Saddam :

    Od nadogradnje na ver. 4.4.2 (Nexus 4) sam postavio ART i mogu reći da sve radi odlično! Aplikacije se pokreću nevjerojatno brzo (posebno Googleove), a baterija traje barem 80% duže nego prije updatea. Jedine probleme sam imao kad bi pokrenuo tethering preko widgeta – tethering bi se neprekidno uključivao i isključivao dok nisam isključio mobitel…

  • xoxo :

    Ma 4.4.2 na N5 radi savršeno, a s ARTom, bateriju sam još produžio trajanje..
    Da ne zaboravim, lagg je nepoznat pojam na N5..

  • Raosov mačak :

    Šteta što su N5 zasrali s baterijom, inače bi bio prva liga…

  • xoxo :

    Baterija je ok, zapravo jako dobra je..
    Screen on time mi je oko 4.5h, i trajanje oko 1.5d, wifi i nekaj malo poziva..
    Iznenađujuće je da u deep sleepu prakticki (15h, potrosi 1-2%) nema draina baterije..

  • Bunika :

    Bia sam uvjeren da ART znaci Ahead of RunTime, dobro da sam ovo procita :)

    Odlican clanak, drago mi je procitat ovakve “istrazivacke” clanke koji nisu samo c/p ostalih, ka sta vecina ostalih portala radi

  • Odličan članak, pozivam vas na više tekstova ovog tipa. Pozdrav uredništvu i sve najbolje povodom Nove godine! Samo nastavite tako!

  • jontravolta :

    da li će se ART pojaviti na svim uređajima koji će dobiti 4.4 kit kat ili samo nexus telefoni sa 4.4?

  • @jontravolta
    bit će na svima ;)

  • CR7 :

    Odlična ideja za članak, svaka čast! SRETNA NOVA 2014. SVIMA!

 

Komentiraj

Your email address will not be published. Required fields are marked *

Možeš koristiti sljedeće HTML tagove i atribute: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

_________________________________________
_________________________________________
          
_________________________________________
_________________________________________
_________________________________________
- ShoutBox -
You must be signed in to post a comment
  • James_Semaj
    (Monday, Jul 21. 2014 07:53 PM)
    uz nadoplatu 89 lipa??? hahaha zamisli još sam i boju mogao birati ;) ajde javi što si rješio baš me zanima. Kod mene je Vip u pitanju
  • James_Semaj
    (Monday, Jul 21. 2014 07:52 PM)
    @Luuka007 Baš me zanima što si dobio. Moj HOX je bio na popravku 6 puta pod garanciom (nikad popravljen). Napsovao sam im se zadnji puta i naprijetio i zove me žena iz HTC servisa dali bi imao nešto protiv da dobijem M8
  • umirovljenik
    (Saturday, Jul 19. 2014 10:35 AM)
    Molim pomoć: Sony Xperia Z1 compact, konstatno (iritanto) javlja pogrešku o očitovanju i neprekidno ometa skype, hangout… nema nikakvih ažuriranja na čekanju pa mi je nejasno. uz to ide iritantan zvuk. ima netko savjet?
  • dre
    (Thursday, Jul 17. 2014 11:47 PM)
    Xiaomi Mi3….imali ko ovaj telefon?
  • RazeR
    (Wednesday, Jul 16. 2014 02:57 PM)
    uzimam sestri i za nju je kamera prednja isto i najvise one zenkse stvari fb instagram itd neki kazu da je baterija ekstra na s4 kao i da je display bolji
    pa zato neznam sta bi
  • Mislav Bušić
    (Wednesday, Jul 16. 2014 01:35 PM)
    Ukoliko ti manjak memorije nije iznimno značajan, ja imam same pohvale na G2.
    Jes po nekima bi S4 taj bio bolji izbor, a sad sve ovisi koji su ti prioriteti.

1 · 2 · 3 · 4 · 5 · »