- - Čo je to ART a ako sa líši od virtuálneho počítača Dalvik v systéme Android?

Čo je ART a ako sa líši od Dalvik Virtual Machine v systéme Android?

Vo svete technológií nové terminológie askratky nie sú ničím novým a niekedy s každým novým vydaním dokonca existujúceho softvéru sa môže objaviť nový pojem, ktorý každý používa a rozumie mu. Problém pre začiatočníkov a dokonca aj veľa príležitostných používateľov je však v tom, že ani úplne nerozumejú, čo nová konotácia znamená, ani o nej nemôžu ľahko zistiť z oficiálnych zdrojov, a to predovšetkým kvôli tomu, že vývojári nie sú „ Tiež by som rád vysvetlil mnoho takýchto terminológií a ich technické podrobnosti. Prinajlepšom vám ukážeme na oficiálny odkaz, ktorý poskytuje vysvetlenie, ale v takom technickom zmysle, že je pre zbytočného technika takmer zbytočný.

My v AddictiveTips sme boli vždy hrdíhlúpe technické koncepcie a poskytovanie odpovedí v podmienkach, ktoré sú prijateľné pre príležitostného používateľa a začiatočníka v oblasti technológií. Preto, keď sa spoločnosť Google rozhodla predstaviť ART so systémom Android 4.4 KitKat, videli sme to ako príležitosť predstaviť našim čitateľom nové runtime prostredie a pomôcť všetkým pochopiť, o čom to všetko je a ako sa líši od virtuálneho stroja Dalvik, ktorý ART sa stavia ako náhrada.

Čo-je-ART_vs-Dalvík-Android Runtime Environment

Čo je to runtime prostredie?

Predtým, ako sa dostaneme k odpovedi na skutočnú otázku,musíme pochopiť, čo je to runtime prostredie. Zjednodušene povedané, runtime pozostáva zo softvérových inštrukcií, ktoré sa vykonajú, keď je program spustený, aj keď nie sú v zásade súčasťou kódu daného softvéru. Tieto pokyny v podstate prekladajú vlastný kód softvéru do kódu, ktorý je počítač schopný bežať. Preto všetky počítačové jazyky vyžadujú určitý druh modulu runtime, ktorý dokáže správne vykonať kód napísaný v tomto jazyku.

Android využíva ako svoj virtuálny počítačruntime prostredie na spustenie súborov APK, ktoré tvoria aplikáciu pre Android. Výhoda použitia virtuálneho počítača je dvojaká - po prvé, kód aplikácie je izolovaný od hlavného operačného systému, čo zaisťuje, že ak sa niečo pokazí, je obsiahnuté v izolovanom prostredí a neovplyvní primárny OS. A za druhé, umožňuje krížovú kompatibilitu, čo znamená, že aj keď je aplikácia zostavená na inej platforme (napríklad v počítači, ako je to zvyčajne v prípade vývoja mobilných aplikácií), môžu sa stále vykonávať na mobilnej platforme pomocou virtuálneho počítača. ,

Pre Android, runtime založené na virtuálnom strojiprostredie, ktoré sa doteraz používa, sa nazýva Dalvik Virtual Machine, ktorý, som si istý, že každý, kto sa niekedy pustil do detailov OS, je s ním viac ako oboznámený.

Prečo používať virtuálny počítač vôbec?

To je vlastne bod, ktorého sme sa dotkli tesne nad. Virtuálne stroje sú pomalé, nedá sa to poprieť, ale v skutočnosti majú niekoľko výhod, vďaka ktorým sú obľúbenou voľbou.

  • Virtuálne stroje poskytujú izolované prostrediena vykonanie kódu. Preto aj keď aplikácia obsahuje škodlivý kód, ktorý môže poškodiť jadro operačného systému, nebude mať priamy vplyv na systémové súbory, a preto bude jadro operačného systému chránené pred poškodením. Veľkou výhodou je väčšia stabilita a spoľahlivosť operačného systému.
  • Aplikačné súbory APK dodávané prostredníctvom Obchodu Play(alebo v tomto prípade akýkoľvek iný zdroj) sú nekompilované pokyny, ktoré vývojári spoliehajú na to, že virtuálny stroj kompiluje pred vykonaním a spustením na zariadení. To poskytuje väčšiu kompatibilitu; ak vývojár mal poskytnúť už skompilovaný kód a bol kompilovaný pre procesor založený na Snapdragon, nemusí napríklad správne fungovať na čipe Tegra. Táto kompilácia na zariadení preto rieši tento problém.

Čo je Dalvik a čo je s tým zlé?

To je otázka, nie? Dalvik tam bol od roku Android, ktorý sa začal v roku 2007, a odvtedy sa veľmi nezmenil, okrem prístupu založeného na kompilácii Just-In-Time (JIT) zavedeného v systéme Android 2.2 Froyo, ktorý v podstate kompiluje aplikácie hneď, keď sú alebo keď používateľ poskytne potrebné pokyny. Je to užitočné, rovnako ako zlepšenie oproti predchádzajúcemu konvenčnému interpretačnému prístupu, ktorý kompiloval a bežal kód riadok po riadku, keď bežal, ale nevýhodou je veľká réžia, keď sa aplikácia spúšťa prvýkrát.

Je to preto, že systém sa musí spojiťvšetky potrebné súbory, zostavte aplikáciu a nahrajte ju do pamäte RAM. Pokiaľ kompilovaná aplikácia zostane v pamäti RAM, bude naďalej pohotovo reagovať, ale keď načítate viac aplikácií a dôjde k vyčerpaniu pamäte RAM, prvá sa uvoľní, a preto sa pri ďalšom spustení celý proces začne znova. Tento prístup má zmysel na papieri a v skutočnosti fungoval až doteraz pre platformu. Najstaršie zariadenia s obmedzenou RAM však trpia najviac, pretože nakladací / vykladací cyklus pokračuje častejšie, a preto sa systém z hľadiska celkovej odozvy cíti pomaly. Tu prichádza nový virtuálny stroj, ART.

Čo je ART a ako zlepšuje veci?

ART alebo Android RunTime (pekne chromé meno, áno,vieme) je nový experimentálny virtuálny stroj, ktorý spoločnosť Google uviedla so systémom Android 4.4 KitKat ako možnosť pre vývojárov (zatiaľ je Dalvik stále nastavený ako predvolený). Hlavným rozdielom medzi ART a Dalvik je prístup kompilácie, ktorý obidva tieto spôsoby použitia - ART využíva nový koncept AOT-Of-Time (AOT) na rozdiel od JIT spoločnosti Dalvik, ktorý v podstate kompiluje aplikácie pred ich uvedením na trh. To znamená, že prvé inštalácie budú trvať dlhšie a aplikácie zaberajú viac miesta na internom úložisku, ale zároveň sa aplikácia skompiluje hneď po inštalácii, a preto budú časy spustenia oveľa rýchlejšie. Podobne, pretože pri kompilácii sa v čase inštalácie bude starať iba raz, zdaňovanie procesorov je nižšie, čo vedie k lepšej životnosti batérie a celkovému výkonu.

Dalvik Vs. ART - Porovnanie

Predtým, ako sa pohneme ďalej, urobme rýchle porovnanie oboch virtuálnych strojov.

Dalvík

ART

Používa prístup JIT (Just-In-Time), čo vedie k nižšej spotrebe úložného priestoru, ale k dlhšiemu načítaniu aplikáciíVyužíva prístup AOT-Of-Time (AOT), ktorý pri inštalácii kompiluje aplikácie, čo vedie k rýchlejšiemu načítaniu a nižšiemu využitiu procesora.
Vyrovnávacia pamäť sa časom hromadí, takže zavádzacie časy sú rýchlejšieCache je postavená pri prvom štarte, takže reštartovanie zariadenia trvá podstatne dlhšie
Funguje lepšie pre nižšie interné úložné zariadenia, pretože obsadené miesto je menšieSpotrebuje omnoho viac vnútorného úložného priestoru, pretože okrem APK ukladá aj kompilované aplikácie
Je stabilný a časovo testovaný - VM pre vývojárov aplikáciíJe veľmi experimentálny a nový - zatiaľ nie je veľa podpory od vývojárov aplikácií

Tvrdíte, že ART je experimentálny ...

Áno, a teraz je k dispozícii iba nazariadenia s čipovými sadami Snapdragon a so systémom Android 4.4 KitKat. Ak chcete, môžete prepnúť z Dalviku na ART zo skrytých možností pre vývojárov. Upozorňujeme však, že niektoré z vašich aplikácií nemusia správne fungovať. Ak už je v prostredí Dalvik vytvorená vyrovnávacia pamäť aplikácií, prvý reštart po vykonaní prepínača môže trvať až pol hodiny.

Spoločnosť Google predovšetkým sprístupnila ART sKitKat pre vývojárov, s ktorými si budú hrať, a vytvoriť podmienky pre trvalý prechod do budúcnosti. A to v žiadnom prípade neznamená, že ART je pripravený na použitie dnes. Bude to v budúcnosti, ale zatiaľ je experimentálne a nie je vhodné na každodenné použitie koncovým používateľom.

Pokiaľ ide o výhody ART, sú zmiešanésprávy. Pre väčšinu recenzentov obsahujú testovacie zariadenia štvorjadrové procesory s viac ako 2 koncertmi RAM, čo je viac než dostatočné nastavenie na skutočné pozorovanie zvýšených rýchlostí z ART. Náhodní používatelia napriek tomu hlásia nárast rýchlosti o 50% a výdrže batérie o viac ako 30%. Iní tvrdia, že to nie je nič iné ako placebo efekt.

So všetkou spravodlivosťou sa pred tým nemôže povedať ničsa stáva dostupným pre masy a stráca experimentálnu značku. Preto túto diskusiu uložíme na neskôr. V tejto chvíli možno s istotou povedať, že ART je budúcnosť. Google sa chystá zostaviť zostavu s predstihom, aby skutočne zodpovedal iOS, jeho najväčšiemu náprotivku a ART sa chystá vydláždiť cestu. Bez ohľadu na to, ako hlúpe sa meno môže zdať alebo aké nekompletné je práve teraz, budeme stále viac vidieť ART.

Komentáre