Cum se configurează smartphone-uri și PC-uri. Portal informativ

Runtime dalvik și arta. ART și Dalvik: Cum funcționează

În lumea modernă a tehnologiei și a abrevierilor, nimeni nu este surprins de noi nume și abrevieri. Cu toate acestea, există o problemă: utilizatorii obișnuiți nu sunt întotdeauna pe deplin conștienți de ceea ce a învățat gadgetul lor după actualizare. Dezvoltatorii rareori ne încântă cu descrieri detaliate ale inovațiilor și noilor tehnologii și este extrem de rar să găsim o explicație clară pe site-ul oficial - în cel mai bun caz, utilizatorul va găsi doar o scurtă descriere cu expresii și mai de neînțeles.

Încercăm întotdeauna să ajutăm utilizatorii să înțeleagă noile dispozitive și tehnologii, așa că am decis să vă spunem, cititorilor noștri, despre tehnologia ART mai detaliat și, de asemenea, să facem o mică comparație cu mașina virtuală familiară Dalvik.

Ce este o aplicație de rulare (mașină virtuală)?

Discuția despre Dalvik și ART este imposibilă fără înțelegerea elementelor de bază, așa că mai întâi să vorbim despre mașina virtuală ca atare. O aplicație runtime este un set de instrucțiuni executate pentru a traduce codul aplicației în cod pe care un computer îl poate înțelege. Mașina virtuală este utilizată fără să fie măcar parte a programului principal. În general, toate limbajele de computer „gestionate” (Java în Android, C# în Windows Phone, ECMAScript în browsere) necesită un astfel de mediu pentru a înțelege limba în care este scrisă aplicația.

Android folosește o mașină virtuală pentru a executa fișiere DEX (similar cu EXE din Windows), care sunt conținute în arhiva APK a aplicației Android. Există două avantaje ale unei astfel de soluții. În primul rând, fiecare aplicație rulează pe un sistem izolat de nucleul sistemului de operare, astfel încât acesta din urmă se simte mai mult sau mai puțin în siguranță. În al doilea rând, utilizarea unei mașini virtuale deschide calea aplicațiilor multiplatformă, adică aplicația poate rula pe un smartphone ARM, tabletă MIPS sau computer x86.

„După cum știți, în tot acest timp Android a folosit mașina virtuală Dalvik, pe care probabil că au întâlnit-o toți cei care s-au adâncit puțin în caracteristicile sistemului de operare.”


De ce să folosiți un timp de rulare a aplicației?

Am răspuns deja la această întrebare mai sus. Fără îndoială că folosirea unei mașini virtuale încetinește execuția aplicațiilor, dar are câteva avantaje care influențează alegerea în favoarea ei.

  • Mașina virtuală rulează cod de aplicație terță parte într-un mediu izolat. În consecință, codul care poate dăuna nucleului sistemului de operare nu va putea interacționa direct cu fișierele de sistem, ceea ce va proteja sistemul. Un avantaj uriaș al utilizării unei mașini virtuale este funcționarea mai stabilă și mai fiabilă a sistemului principal.
  • Prin Google Play Store și alte surse, dezvoltatorul distribuie un fișier APK al programului său, care conține instrucțiuni necompilate pe care mașina virtuală le va „asambla” înainte de execuție. Această soluție oferă o compatibilitate mai mare; în caz contrar, codul compilat pentru dispozitivele bazate pe Snapdragon nu va putea rula pe dispozitivele Atom. Prin urmare, mașina virtuală rezolvă problema cu destinația de compilare.

Ce este Dalvik și care este problema lui?

Aceasta este întrebarea principală. Dalvik a fost folosit în Android încă de la prima versiune a sistemului de operare, din 2007, și în tot acest timp a existat practic o schimbare majoră - apariția „compilației din zbor” în Froyo, mai cunoscută ca JIT. Caracteristica sa principală este că aplicația este complet compilată atunci când utilizatorul deschide sau rulează instrucțiunile corespunzătoare. Aceasta este o remediere foarte utilă, deoarece înainte de 2.2 toate aplicațiile erau compilate pas cu pas, ceea ce reducea viteza; Singurul dezavantaj al acestei soluții este că atunci când programul pornește, procesorul are o sarcină serioasă.

Pentru a evita munca suplimentară atunci când rulați din nou programul, sistemul colectează toate instrucțiunile compilate în timpul utilizării aplicației și le trimite într-un cache, care este stocat în sistemul de fișiere cu extensia *.ODEX (Optimized Dalvik EXecutable). De îndată ce lansați aplicația pentru a doua oară, Dalvik nu va mai compila, dar va încărca în memorie date deja optimizate pentru dispozitivul dvs. Cu toate acestea, apelarea unei funcții de aplicație care nu a fost folosită înainte va face ca instrucțiunile să fie compilate din nou. Dacă în acest moment sistemul efectuează lucrări de la terți (de exemplu, ascultarea muzicii sau actualizarea aplicațiilor), atunci din cauza supraîncărcării procesorului și a subsistemelor de intrare/ieșire, pot fi observate smucituri și frâne vizibile în memorie. Aici intervine ART.

Ce este ARTA și cum va salva lumea?

ART, sau Android RunTime (un nume foarte strâmb) este o nouă mașină virtuală pe care Google a introdus-o în Android 4.4 ca unul dintre instrumentele de dezvoltare (Dalvik este folosit implicit). Principala diferență între noul mediu de execuție a aplicațiilor este utilizarea tehnologiei Ahead-Of-Time (AOT, „ahead of time”). ART compilează toate instrucțiunile de aplicare înainte de a începe, în timpul procesului de instalare. Timpul acestuia din urmă crește, precum și cantitatea de memorie permanentă ocupată de program, dar mașina virtuală nu mai compilează aplicația curentă în timpul execuției acesteia, ceea ce îmbunătățește confortul atunci când se utilizează activ multitasking. Cu toate acestea, este recomandabil să aveți mai multă RAM, deoarece ART va încărca în el chiar și acele instrucțiuni ale aplicației pe care este posibil să nu le utilizați niciodată.

Dalvik vs. ARTĂ


Să comparăm pe scurt cele două mașini virtuale


ART este încă un experiment

Desigur, în acest moment ART este doar în curs de testare și este disponibil doar pentru dispozitivele care rulează Android 4.4 și chipset-uri de la Qualcomm. Cu toate acestea, acum puteți trece de la Dalvik la ART prin instrumente ascunse pentru dezvoltatori (meniul se deschide după câteva atingeri pe numărul versiunii din informațiile dispozitivului). Vă rugăm să rețineți că nu toate aplicațiile vor putea funcționa în ART fără actualizări suplimentare; Apropo, prima lansare în modul ART poate dura până la 30 de minute.

Google a pus ART la dispoziția dezvoltatorilor acum, pregătind scena pentru o tranziție completă la această mașină virtuală în viitor. Acest lucru nu înseamnă că ART este stabil acum. Acesta este un experiment și noua mașină virtuală poate să nu fie pregătită pentru utilizarea de zi cu zi.

Era loc pentru multe schimbări și îmbunătățiri. Cele mai multe dintre ele atrag imediat atenția chiar și a utilizatorului obișnuit al acestui sistem. Aceasta este, desigur, instalarea aplicației Hangouts ca mesager standard, un meniu de apelare reproiectat și adăugarea unei tastaturi Emoji. Fanii Android experimentați vor simți cu siguranță o creștere a performanței în comparație cu versiunile mai vechi. Cu toate acestea, există și laturi ascunse, care, conform logicii, ar trebui să fie de interes doar pentru dezvoltatori. Cu toate acestea, semnificația uneia dintre aceste inovații este deosebit de mare. În plus, în curând ne va afecta pe fiecare dintre noi și, prin urmare, ar fi pur și simplu o crimă să păstrăm tăcerea asupra detaliilor sale.

Probabil, mulți dintre voi ați auzit măcar că în Android KitKat a apărut un mod special. Esența sa constă în lansarea mai rapidă a aplicațiilor și execuția lor mai stabilă și mai lină. Poate că încercările de a rezolva această problemă pe cont propriu nu au fost încununate cu succes. Acest lucru nu este surprinzător: cuvintele „mașină virtuală” și „compilație” pot speria pe oricine, mai ales dacă informațiile sunt consumate dintr-o sursă în limba engleză. Pentru a rezolva această problemă, am decis să înțelegem noi înșine esența problemei, prezentând-o în cea mai accesibilă formă.

Câteva concepte de bază

Înainte de a vă familiariza cu esența inovației, trebuie să vă faceți o idee despre câteva detalii. Primul dintre acestea este mediul de rulare al aplicației. În termeni simpli, conceptul notoriu este o colecție de instrucțiuni care sunt executate în timp ce o anumită aplicație rulează. Instrucțiunile, la rândul lor, traduc codul programului în cod pe care sistemul îl poate rula. În consecință, absolut toate limbajele de calculator necesită un mediu de execuție specific pentru a rula aplicații scrise în ele.

Sistemul nostru de operare Android preferat folosește mașini virtuale ca mediu de rulare, primul dintre care, Dalvik, a început să funcționeze încă din 2007. Ei îi datorăm înghețurile periodice ale interfeței și uneori lansări lente ale aplicațiilor. Cu toate acestea, această problemă poate deveni în curând parte a istoriei.

De ce mașini virtuale?

Acest tip de mediu de rulare are două avantaje necondiționate care fac viața mai ușoară nu doar dezvoltatorilor, ci și nouă, utilizatorilor. Primul avantaj este protecția sistemului. Nu întâmplător o mașină virtuală se numește virtuală: funcționarea sa este complet izolată de sistemul de operare. În consecință, o eroare sau o înghețare banală nu va afecta în niciun fel performanța dispozitivului dvs.

Al doilea avantaj este multiplatformă. Mașina virtuală va putea rula aplicația, chiar dacă a fost creată pe un PC.

Avantajele și dezavantajele Dalvik

Dalvik, ca tot ce este pe lumea asta, este imperfect. Motivul spascării periodice a interfeței este tipul de conversie a codului aplicației în hardware. Această mașină face acest lucru live, iar acest tip de compilație se numește Just-In-Time. În consecință, este aproape imposibil să se prezică apariția bug-urilor, deoarece acest lucru se poate întâmpla în orice moment. Probabilitatea ca acest lucru să se întâmple este deosebit de mare în timpul primei lansări, când o parte din codul convertit nici măcar nu este stocată în cache.

Problema încetinirii primei lansări, de altfel, nu este deloc întâmplătoare. Acest lucru se întâmplă deoarece sistemul trebuie să adună toate fișierele necesare pentru a rula aplicația și pentru a încărca RAM cu ele. În acest caz particular, dispozitivele cu o cantitate mică de RAM suferă cel mai mult, pentru care procesul de încărcare este încărcat, dacă nu cu blocarea aplicației, atunci cel puțin cu întârzieri vizibile în execuția acesteia.

Compilarea din mers încarcă în mod semnificativ procesorul, dar în același timp permite dezvoltatorilor să nu fie nevoiți să optimizeze codul pentru fiecare procesor individual și alte componente ale dispozitivului.

O nouă mașină virtuală este concepută pentru a corecta cele de mai sus, care a reușit să fie remarcată de departe de cel mai complicat nume - Android Runtime. Sau prescurtat ca ART.

Avantajele și dezavantajele ART

Noua mașină virtuală a prins viață cu Android 4.4 KitKat, dar nu i s-a acordat atenția cuvenită la prezentare. Motivul pentru aceasta este că ART este încă în stadiu experimental. Cu toate acestea, deși Dalvik este folosit ca mașină implicită, puteți trece la Android Runtime acum.
Cu toate acestea, nu vă grăbiți să faceți acest lucru. Mai întâi trebuie să vă familiarizați cu caracteristicile noii versiuni.

Cel mai notabil avantaj al ART este un nou tip de compilație numit Ahead-Of-Time. Cititorii care știu engleza probabil au ghicit imediat ce se întâmplă. Dar adevărul este că procesul de conversie a codului în noua versiune este efectuat înainte de lansarea aplicației - chiar și în timpul instalării. În consecință, apar imediat câteva dezavantaje, care, în mod corect, merită menționate. Acesta este, în primul rând, un proces de instalare mai lung și, în al doilea rând, o dimensiune finală mai mare a aplicației. Un alt dezavantaj este o consecință a imaturității ART: mașina virtuală nu funcționează în prezent cu toate aplicațiile.

Cu toate acestea, lista meritelor este mult mai semnificativă. Aceasta este, de exemplu, o interfață mai fluidă și o încărcare mai rapidă a aplicațiilor. În plus, deoarece procesul de compilare este efectuat o singură dată, nu va încărca în continuare procesorul, ceea ce va duce la o autonomie îmbunătățită a dispozitivului.

Proprietarii de dispozitive care rulează Android 4.4 cu procesor Snapdragon pot trece la mașina virtuală ART în meniul dezvoltatorului.

Concluzie

Dezvoltarea acestei tehnologii are un potențial enorm. În joc este dezmințirea mitului despre încetineala și instabilitatea Android, care nu numai că va mulțumi proprietarii de dispozitive care îl rulează, dar va elimina și cel mai serios argument din dezbaterea susținătorilor iOS.

Momentan, reprezentanții Google nu raportează momentul implementării finale și înlocuirii lui Dalvik cu ART. Aș vrea să cred că acest lucru se va întâmpla foarte curând.

Odată cu lansarea noilor versiuni de Android, acest sistem de operare a necesitat din ce în ce mai multă memorie cu acces aleatoriu (RAM). Primele dispozitive cu acesta aveau 256 MB de RAM, dar astăzi un gigabyte poate să nu mai fie suficient. Cu toate acestea, Google a preluat optimizarea și a lansat Android 4.4 KitKat. Această versiune a sistemului de operare este mai rapidă, dar necesită mai puține resurse. Acest lucru a devenit posibil datorită trecerii de la sistemul Dalvik la ART. Citiți mai jos despre ce este și de ce smartphone-urile cu Android 4.4 vor funcționa mai repede pe procesoare slabe.

Unul dintre motivele popularității sistemului de operare mobil Google este relativa ușurință de a dezvolta aplicații pentru acesta. Datorită acestui fapt, magazinul de software Google Play a fost rapid umplut cu utilități. Acest lucru a devenit posibil cu ajutorul mașinii virtuale Dalvik, care a transformat codul aplicației în ceva de înțeles pentru procesorul unui telefon mobil sau tabletă. Programatorii scriu în modul care le convine și nu trebuie să-și facă griji cu privire la ce chipset este în gadgetul utilizatorului: de la Qualcomm, Intel, Mediatek, nVidia, Samsung sau alt furnizor.

Datorită faptului că codul aplicației este transformat din mers în ceva de înțeles pentru hardware-ul gadgetului, este foarte convenabil pentru dezvoltatori să-și creeze propriile programe. Dar din cauza acestui intermediar sub forma mașinii virtuale Dalvik, procesorul dispozitivului trebuie să efectueze de câteva ori mai multe acțiuni: să citească codul, să-l transforme în ceva de înțeles de hardware, să-l execute și să afișeze rezultatul pe ecran. Consecința acestei arhitecturi ar putea fi observată de aproape fiecare proprietar al unui dispozitiv Android sub forma unei interfețe lente. Când smartphone-ul nu este încărcat cu jocuri și calcule, memoria RAM este liberă, dar simpla răsturnare a ecranului provoacă o a doua întârziere.

Google a început să lupte cu această problemă cu mult timp în urmă: primul pas serios a fost Project Butter, anunțat împreună cu Android 4.1 Jelly Bean. Datorită acesteia, sistemul de operare a început să răspundă oarecum mai rapid la acțiunile utilizatorului, dar în general problema a rămas. Prin urmare, Google a creat și pregătește ART - un înlocuitor pentru mașina virtuală Dalvik.

Pentru ceEste nevoie de Androidvirtualmașină

Orice program folosește multe acțiuni standard: afișarea unei imagini pe ecran, scrierea fișierelor în memorie, transferul fișierelor prin Bluetooth sau Wi-Fi. Pentru a ușura viața programatorilor, sistemul de operare are funcții încorporate pentru a îndeplini aceste sarcini. Dezvoltatorul trebuie doar să indice în aplicația sa „copiați fișierul XXX pe cardul de memorie din folderul UUU”. Nu-i pasă cum se face sau de câte resurse de sistem necesită.

De asemenea, programatorii scriu adesea programe „defecte” care au erori în cod, „pierde” memorie și altele asemenea. O mașină virtuală vă permite să izolați utilitățile unele de altele și de nucleul sistemului de operare. Datorită acestui fapt, blocările aplicației nu afectează sistemul de operare și alte programe care rulează. Fără aceasta, o eroare a utilitarului face ca întregul sistem să înghețe. Utilizatorii mai în vârstă își pot aminti cum erorile din software-ul aplicației au dus la „ecranul albastru al morții” în sistemele de operare desktop Windows 95 și 98, care nu aveau mecanisme de virtualizare similare.

Fișierele APK pe care un utilizator le descarcă de pe Google Play Store sau de pe orice alt server sunt cod necompilat. Niciun computer nu o poate face pentru că pur și simplu „nu înțelege”. Dacă utilitățile ar fi furnizate într-o formă deja compilată și ușor de înțeles pentru hardware, atunci unele dintre ele ar funcționa, de exemplu, pe dispozitive cu chipset Snapdragon, dar ar da o eroare atunci când sunt lansate pe gadgeturi cu cipuri Tegra.

Fiecare producător adaptează Dalvik la procesorul și hardware-ul său. Datorită acestui lucru, același program poate rula pe gadgeturi de la aproape orice producător fără a-și edita codul sursă. Și din acest motiv nu puteți instala pur și simplu o nouă versiune de Android pe dispozitivul dvs., cum ar fi reinstalarea Windows.

Ce s-a întâmplatDalvik și de ce necesită înlocuire

Mașina virtuală Dalvik (numită după portul de pescuit islandez Dalvik) este prezentă în Android încă de la lansarea acestui sistem de operare în 2007. De atunci, a suferit o singură schimbare majoră: în Android 2.2 Froyo, codul din APK a fost transformat din mers în cod de mașină imediat după ce utilizatorul a lansat utilitarul. Anterior, era procesat linie cu linie în timpul execuției programului pe un dispozitiv mobil. Noua abordare a făcut mai ușoară lansarea utilităților și funcționarea acestora, dar acest lucru a afectat cerințele pentru resursele hardware. Și astăzi, doar un gigabyte de memorie RAM poate să nu fie suficient pentru ca un telefon mobil să funcționeze rapid.

Ceastfel deARTA șiCumeava ajutaAndroid

Mașina virtuală ART (sunt de la Android RunTime - Android runtime environment) este încă în stadiu experimental, dar o puteți încerca deja în Android 4.4 KitKat. Utilizatorii dispozitivelor care rulează această versiune de sistem de operare pot trece de la Dalvik implicit la ART.

Principala diferență dintre aceste mașini virtuale este abordarea compilației. Dacă Dalvik convertește codul în timp real imediat după lansarea utilităților, atunci ART face acest lucru în avans în timpul instalării. Aceasta înseamnă o creștere a timpului de instalare pentru utilități și o amprentă mai mare în memoria flash a dispozitivului. Dar asta înseamnă și o pornire mai rapidă și cerințe reduse pentru resursele hardware, în special cantitatea de RAM. De aceea, Android 4.4 KitKat, conform Google, va putea rula rapid și stabil pe gadgeturi cu 512 MB de RAM. Noua abordare a conversiei codului va reduce, de asemenea, consumul de baterie.


Comparați volumul acelorași programe folosind Dalvik (stânga) și ART (dreapta)

Dalvik vs.ART - comparație

În general, mașina virtuală ART promite multe îmbunătățiri față de Dalvik existent. Avantajele și dezavantajele fiecăruia pot fi văzute în tabelul de mai jos:

Convertește din mers fișierele APK în cod care poate fi citit de CPU, ceea ce necesită mai puțină memorie flash pentru a stoca, dar face ca aplicațiile să dureze mai mult pentru a lansa

Convertește fișierele APK în cod care poate fi citit de CPU înainte de a fi instalate. Acest lucru necesită mai puține resurse CPU la pornire și reduce timpul de pornire a programului

În timp, codul mașinii este stocat în cache, ceea ce duce la încărcarea mai rapidă a telefonului mobil

Cache-ul codului mașinii este creat la prima pornire a telefonului mobil, motiv pentru care pornirea durează mult mai mult

Mai potrivit pentru dispozitivele cu stocare flash de capacitate redusă, deoarece memoria cache a codului de mașină ocupă mai puțin spațiu

Consumă mult mai multă memorie flash (10-20%), deoarece pe lângă fișierele APK stochează codul de mașină compilat al fiecărui program

Stabil și testat în timp

Pot apărea erori și neajunsuri noi și experimentale, neașteptate

Încercați experimentalARTĂ

Noul compilator este în curs de dezvoltare și cercetare, dar utilizatorii îl pot încerca deja. Este disponibil pentru proprietarii de dispozitive care rulează Android 4.4 KitKat și se bazează pe chipset-ul Snapdragon. Cei care decid să încerce noul produs ar trebui să-și amintească că noua mașină virtuală poate face unele utilități inoperabile. În plus, după o repornire, pornirea smartphone-ului poate dura până la jumătate de oră - acesta este timpul pe care ART va avea nevoie pentru a crea un cache al aplicației.

Pentru a activa ART în loc de Dalvik, trebuie să intrați în meniul dezvoltatorului. Pentru a activa cel din urmă, trebuie să deschideți setările smartphone-ului și să accesați secțiunea „Despre telefon”. Acolo trebuie să faceți clic pe butonul „Număr versiune” de mai multe ori până când sistemul de operare raportează disponibilitatea noului meniu. După aceasta, trebuie să selectați mașina virtuală de utilizat și să reporniți dispozitivul.

În general, testele de la utilizatorii care au trecut la ART arată o accelerare generală de aproximativ 50% și o creștere a duratei de viață a bateriei de până la 30%.

Pentru a face „Instrumente pentru dezvoltatori” să apară în setări:


  1. Accesați „Setări” -> „Despre telefon”

  2. Pe elementul „Număr de compilare”, faceți clic de 7 ori la rând (după câteva clicuri, pe ecran apare un mesaj despre câte ori mai trebuie să faceți clic pentru ca elementul „Instrumente pentru dezvoltatori” să apară în meniu.

Cum să alegi timpul de execuție ART (sau Dalvik).

  1. Accesați Setări -> Opțiuni pentru dezvoltatori -> Selectați timpul de execuție.

  2. Selectați „Utilizați ART” (sau „Folosiți Dalvik”)

Deocamdată, runtime-ul ART nu este destinat publicului larg, ci celor care doresc să experimenteze.

După schimbarea duratei de rulare la ART, telefonul se va reporni. Cu toate acestea, prima descărcare va dura mai mult deoarece aplicațiile Android vor fi recompilate în coduri de mașină. Acest lucru permite aplicațiilor să se deschidă și să ruleze mai rapid, deoarece, spre deosebire de Dalvik, nu mai necesită compilare în timp real. ART are și dezavantaje. Aplicațiile vor ocupa mai mult spațiu (ceea ce nu este atât de semnificativ), vor dura puțin mai mult pentru a instala și vor ocupa cu 10-20% mai multă memorie RAM. În plus, pot apărea probleme cu funcționarea unor funcții.

Și activarea ART ne-a permis să creștem semnificativ viteza de lucru. Creșterea performanței este asociată, desigur, nu doar cu ART, ci și cu eliminarea aplicațiilor Android din firmware-ul adăugat de Samsung și AT&T. Oricum, nu am folosit niciodată aceste aplicații, dar a fost imposibil să le șterg din firmware-ul nativ folosind eliminarea obișnuită a programelor.

Este prea devreme să vorbim despre stabilitate, dar după două zile de utilizare a telefonului nu au fost găsite probleme semnificative. În plus, revenirea la utilizarea Dalvik este la fel de ușoară. Prin urmare, recomand utilizatorilor experimentați să încerce această inovație, deoarece interfața funcționează acum la fel de bine ca și în iOS.

Ați încercat ARTA? Ați simțit creșterea vitezei în comparație cu Dalvik?

Actualizare (25 iunie 2014)
Testarea ART a continuat pe telefoanele Google Nexus S și Galaxy s3 (AT&T i747) pe Android 4.4 - 4.4.2. În același timp, Galaxy SIII a folosit firmware CyanogenMod 11 (Quantum 3.5), iar Google Nexus S a folosit AOSP KitKat 4.4.2 Mod pentru Nexus S. Nu au fost observate probleme la utilizarea ART. Și asta în ciuda faptului că firmware-ul Quantum Kernel pentru Galaxy s3 este optimizat pentru Dalvik, iar dezvoltatorul acestuia nu recomandă utilizarea ART. Nu există un câștig de performanță vizibil pe Galaxy s3 atunci când utilizați sarcini de zi cu zi (deși smartphone-ul ar trebui să ruleze mai repede din cauza lipsei de compilare în timp real). În mod similar, pe vechiul Google Nexus S creșterea vitezei nu este vizibilă pentru ochi.

Versiunea Android 4.4, pe lângă funcționalitatea extinsă, oferă utilizatorilor o modalitate fundamental nouă de procesare a datelor. În versiunile anterioare, fișierele erau compilate în mediul Dalvik. Aceasta este o mașină virtuală Android care traduce fișierul criptat într-un limbaj de programare care poate fi citit de procesorul dispozitivului mobil. În noua versiune de OS pentru smartphone-uri, Google folosește mediul de rulare ART, care, potrivit dezvoltatorilor, are performanțe mai bune. ART sau Dalvik? Să încercăm să ne dăm seama în acest articol.

ART runtime, cu care poți îmbunătăți performanța smartphone-ului tău

Ce este compilarea?

Orice aplicație pe care o descărcați pe telefon sau pe computer este scrisă în limbajul computerului. Având în vedere că gadgeturile rulează pe platforme diferite, există un mediu de execuție virtual care decriptează programul. În acest fel, procesorul telefonului poate citi fișierul pe care îl utilizați. În esență, este o unitate de disc virtuală care oferă securitate și performanță dispozitivului. Iată principalele avantaje pe care le oferă runtime:

  1. Codul programului este citit și deschis izolat, fără a afecta platforma dispozitivului mobil. Prin urmare, probabilitatea ca programele malware să fie „prinse” împreună cu fișierul este redusă la minimum.
  2. Aplicațiile și programele scrise pentru Android sunt compilate imediat înainte de instalare. Această abordare face viața mai ușoară pentru programatori și utilizatori. Dezvoltatorul nu „ajustează” fișierul pentru un anumit chipset, aplicațiile devin universale.

Care este avantajul noului mediu ART?

Instrumentele ART și Dalvik îndeplinesc funcții similare, astfel încât avantajele noii mașini virtuale pot fi dezvăluite doar prin comparație. Să ne uităm la avantajele și dezavantajele fiecărui timp de execuție.

Runtime-ul Dalvik a fost instalat din 2008. De fapt, acest instrument are aceeași vârstă cu sistemul de operare. Acest instrument folosește modul JUST IN TIME de compilare a fișierelor. Concluzia este că convertorul de cod este activat la lansarea aplicației. Dezavantajul acestei metode de compilare este consumul crescut de resurse ale procesorului la rularea programelor. Ca urmare, unele fișiere în uz sunt de-a dreptul lente sau se blochează.

Memorarea în cache a datelor decodificate ajută la rezolvarea parțială a problemei. De fiecare dată când un fișier este executat, unele dintre date sunt trimise în cache, ceea ce îmbunătățește performanța.

Important! Când actualizați o aplicație, memoria cache devine irelevantă, așa că nu veți putea scăpa complet de înghețarea aplicației!

ART a apărut în Android relativ recent. În versiunea 4.4, noul mediu a fost testat, iar în Android 5.0 este instalat implicit. Dezvoltatorii au ținut cont de erorile versiunii anterioare, astfel încât performanța noului mediu de rulare s-a îmbunătățit considerabil. De exemplu:

  • Procesul de compilare s-a schimbat. Dispozitivul virtual funcționează pe principiul AHEAD OF TIME. Codul fișierului este decriptat nu în momentul lansării, ci în timpul procesului de instalare. Acest lucru reduce consumul de resurse RAM.
  • Sistemele de operare pe 64 de biți sunt acum acceptate.
  • Mașina virtuală elimină gunoiul de informații mai rapid, astfel încât înghețarea sistemului este redusă la minimum.

Dintre deficiențele identificate, se remarcă următoarele:

  • Instalarea aplicațiilor durează mai mult.
  • Instrumentul virtual ocupă mai multă memorie RAM.

Cum se activează ART

Pentru a activa durata de execuție pe un dispozitiv mobil, va trebui să efectuați următoarea secvență de acțiuni:

  • Accesați meniul de setări. Pe dispozitivele mobile, această secțiune este reprezentată ca o pictogramă roată.
Fig.1 Accesați secțiunea „Setări”.
  • Derulați în jos lista.
  • Accesați secțiunea „Despre telefon”, găsiți coloana „Număr de compilare” și faceți clic de mai multe ori. Aceasta va deschide accesul la opțiunile pentru dezvoltatori și va apărea un element corespunzător în meniul de setări.
Fig.2 Faceți clic pe coloana „Build number” de mai multe ori
  • Accesați secțiunea pentru dezvoltatori și faceți clic pe „Runtime Environment”. Aici observați utilizarea ART.
Fig.3 În elementul „Runtime environment”, marcați utilizarea ART

Important: procedura descrisă este relevantă pentruAndroid 4.4 și mai vechi. Dacă utilizați o versiune mai veche, atunci smartphone-ul folosește Delvik în mod implicit, astfel încât elementul de meniu „Runtime Environment” lipsește.

După activarea mașinii virtuale, dispozitivul mobil se va reporni. Timpul de repornire depinde direct de numărul de programe instalate. Noul runtime va „întrerupe” toate codurile aplicației.

Ce sa aleg?

Având în vedere că mediile Dalvik și ART sunt aproape identice, este destul de dificil să dai preferință unuia dintre ele. Probabil totul depinde de dispozitivul mobil pe care îl utilizați.

PRIVESTE FILMAREA

Dacă spațiul de memorie permite, este mai bine să alegeți ART. Acest instrument nu supraîncărcă procesorul și rulează aplicațiile mai rapid. În plus, acesta este un nou sistem care va fi dezvoltat în continuare și va dobândi noi capabilități.

Cele mai bune articole pe această temă