Te tudod hogy mit jelent az ART futtatási kőrnyezet a Kit Kat-nél?
Előrevetíteném, hogy ezt a magyarázatot a saját, egyáltalán nem biztos, hogy jó értelmezésem és ismereteim szerint írom meg. Ne vedd kp-nek.
Az android ellentétben a többi oprendszerhez képest nem teszi lehetővé a programkódok közvetlenül a processzorban történő futtatását. Miért? Passz. Így csinálták meg. Szerintem a minden eszközön egyenlőség elve miatt az egyenlő programoptimalizáció volt az ok. A lényeg, hogy megszületett a Dalvik, az android 2.2-től(azt hiszem). Ez egy java alapú futtatókörnyezet ahol leegyszerüsítve annyi történik, hogy az apk(tömörített állományból) kicsomagolja és futtatja a programot. Nagyon freestyle módon úgy tudnám elképzelni mint ha linuxos gépen egy virtuális gépben futtatnánk egy pl. Windowst. Ez annyiból jó, hogy minden appot egyszerűen ehez igazítva kell fejleszteni nem pedig az adott gép adott proci/ram/stb. összetevőihez amiből ugye számtalan van. A lényeg, hogy amikor több minden van nyitva, több programot használsz a proci egy programot futtat amiben fut minden más.Ha eddig ok, akkor itt jött be az ART.
A Dalvik legnagyobb előnye egyben generálja a hátrányát is. Mivel a programfordítást a java virtuális környezet realtime-ban oldja meg mikor futtatod az alkalmazást, lassítja a vasat. Proci és memóriahasználatot eredményez, mivel azzal kell foglalkoznia, hogy futtat egy programot ami kicsomagolja és futtatja az alkalmazást. (az app programkódja nem a prociban fut hanem egy a prociban futtatott virtuális környezetben.)
Az ART a Dalvik-ot váltja fel. Az új módszer oly módon működik, hogy az app fordítását(az android rendszer által futtathatóvá tételét-fullra leegyszerüsítve-) már a telepítésekor elvégzi. Ezáltal csökken a programok(appok) futtatási ideje,nő a grafikai teljesítménye és ezáltal a rendszer a program indításakor, futtatása közbeni leterheltsége csökken. Eredményképp gyorsabban , kevesebb proci és memóriaigénnyel futhatnak az appok.