- - Какво е ART & как се различава от виртуалната машина на Dalvik на Android?

Какво е ART & как се различава от виртуалната машина на Dalvik на Android?

В света на технологиите, новите терминологии исъкращенията не са нищо ново и понякога, с всяко ново издание на дори съществуващ софтуер, може да видите нов термин, който се появява, който всеки изглежда използва и разбира. Проблемът за начинаещи и дори за много случайни потребители обаче е, че те нито напълно разбират какво означава новата конотация, нито могат лесно да разберат за това сами от официални източници, главно поради факта, че разработчиците не са ' не искам да обяснявам много такива терминологии и техническите им подробности. В най-добрия случай ще бъдете насочени към официална връзка, която дава обяснение, но в такива технически условия, че е доста безполезна за нетехнолог.

Ние от AddictiveTips винаги сме се горделилиизхвърляне на технически концепции и предоставяне на отговори по начин, който е приятен за случайния потребител и техния начинаещ. Следователно, когато Google реши да въведе ART с Android 4.4 KitKat, ние видяхме това като възможност да запознаем нашите читатели с новата среда за изпълнение и да помогнем на всеки да разбере за какво става въпрос и как се различава от виртуалната машина на Dalvik, която АРТ се изгражда за замяна.

Какво-е-ART_vs-Dalvik-Android-Runtime-среди

Какво е среда за изпълнение?

Преди да стигнем до отговора на действителния въпрос,трябва да разберем какво всъщност представлява средата на изпълнение. Казано по-просто, времето за изпълнение се състои от софтуерни инструкции, които се изпълняват, когато програмата ви се изпълнява, дори ако по същество не са част от кода на този софтуер. Тези инструкции основно превеждат собствения код на софтуера в кода, който компютърът може да работи. Следователно, всички компютърни езици изискват някаква среда за изпълнение, която може правилно да изпълни кода, написан на този език.

Android използва виртуална машина като своясреда за изпълнение, за да стартирате APK файловете, които представляват приложение за Android. Предимството на използването на виртуална машина е двойно - първо, кодът на приложението е изолиран от основната операционна система, като гарантира, че ако нещо се обърка, той се съдържа в изолирана среда и не влияе на основната операционна система. И второ, тя позволява кръстосана съвместимост, което означава, че дори дадено приложение да бъде компилирано на друга платформа (като компютър, както обикновено е при разработването на мобилни приложения), те все още могат да бъдат изпълнени на мобилната платформа с помощта на виртуалната машина ,

За Android - виртуалното машинно изпълнениеEnvironemnt в употреба досега е известна като виртуалната машина на Dalvik, която, сигурен съм, че всеки, който някога се е вкопал в детайлите на операционната система, е повече от познат.

Защо изобщо да използвате виртуална машина?

Това е всъщност въпросът, който докоснахме малко по-горе. Виртуалните машини са бавни, няма отричане за това, но всъщност имат няколко предимства, които ги правят предпочитан избор.

  • Виртуалните машини доставят изолирана средаза изпълнение на код. Следователно, дори ако приложението съдържа зловреден код, който може да повреди основната операционна система, той няма да повлияе директно на системните файлове и по този начин основната ОС няма да се повреди. Голямото предимство е по-голяма стабилност и надеждност на операционната система.
  • APK приложенията, които се доставят чрез Play Store(или какъвто и да е друг източник за този въпрос) са некомпилирани инструкции, които разработчиците разчитат на виртуалната машина, която да компилират преди изпълнението и да стартират на устройството. Това осигурява повече съвместимост; ако разработчикът предостави вече компилиран код и той е компилиран за процесор, базиран на Snapdragon, той може да не работи правилно на Tegra чип, например. Следователно, тази компилация на устройството адресира този проблем.

И така, какво е Далвик и какво не е наред?

Това е въпросът, който трябва да се зададе, нали? Dalvik е там от началото на Android през 2007 г. и оттогава не се е променил много, с изключение на подхода за компилация Just-In-Time (JIT), въведен в Android 2.2 Froyo, който основно компилира приложенията точно когато са стартира или когато потребителят предостави необходимите инструкции. Полезно е, както и подобрение в сравнение с предишния подход на конвенционален интерпретатор, който компилира и изпълнява код по ред, докато се изпълнява, но минусът е огромен режий, когато приложението се стартира за първи път.

Това е така, защото системата трябва да се съберевсички необходими файлове, компилирайте приложението и го заредете в RAM. Докато компилираното приложение остава в RAM паметта, то ще продължи да реагира бързо, но когато заредите повече приложения и RAM паметта изтича, първото се разтоварва и следователно, при последващо стартиране, целият процес започва отначало. Подходът има смисъл на хартия и всъщност работи добре досега за платформата. Въпреки това, по-старите устройства с ограничена RAM страдат най-много, тъй като цикълът на товарене / разтоварване продължава по-често, а оттам и системата се чувства бавно по отношение на общата отзивчивост. Именно там идва новата виртуална машина, ART.

Какво е ART & Как подобрява нещата?

ART или Android RunTime (доста куцо име, да,знаем) е нова експериментална виртуална машина, която Google представи с Android 4.4 KitKat като опция за разработчици (като Dalvik все още е този, който е зададен по подразбиране). Основната разлика между ART и Dalvik е компилационният подход, който и двамата използват - ART използва нова концепция Ahead-Of-Time (AOT) противно на JIT на Dalvik, която основно компилира приложения, преди те дори да бъдат стартирани. Това означава, че първоначалните инсталации ще отнемат повече време и приложенията ще заемат повече място във вътрешното съхранение, но в същото време, тъй като приложението ще бъде напълно компилирано веднага щом е инсталирано, времето за стартиране ще бъде много по-бързо. По същия начин, тъй като частта за компилация се грижи само веднъж по време на инсталирането, облагането с процесори е по-ниско, което води до по-добър живот на батерията и обща производителност.

Dalvik Vs. ИЗКУСТВО - Сравнение

Нека направим бързо сравнение на двете виртуални машини, преди да продължим напред.

Dalvik

ИЗКУСТВО

Използва подход Just-in-Time (JIT), което води до по-ниска консумация на пространство за съхранение, но по-дълги времена на зареждане на приложениетоИзползва Ahead-Of-Of-Time (AOT) подход, който компилира приложения, когато са инсталирани, което води до по-бързо време за зареждане и по-ниска употреба на процесора
Кешът се натрупва с течение на времето, така че времето за зареждане е по-бързоКешът е изграден при първо зареждане, поради което рестартирането на устройството отнема значително повече време
Работи по-добре за по-ниски устройства за вътрешно съхранение, тъй като заетото пространство е по-малкоКонсумира много повече вътрешно пространство за съхранение, тъй като освен APK файлове съхранява компилирани приложения
Стабилна е и тествана във времето - VM по избор за разработчиците на приложенияВисоко експериментален и нов - все още не е много поддръжка от разработчиците на приложения

Казвате, че ART е експериментален ...

Да и в момента той е достъпен само наустройства с чипсети Snapdragon и работещ Android 4.4 KitKat. Имате възможност да преминете от Dalvik към ART от скритите програми за програмисти, ако желаете, но бъдете уведомени, че някои от вашите приложения може да не работят правилно. Освен това, ако в Dalvik вече има изграден кеш на приложения, първото рестартиране след превключването може да отнеме до половин час.

Google е предоставил предимно ART сKitKat за разработчиците, с които да си играят, и да установят основанията за постоянен превключвател в бъдеще. И това в никакъв случай не означава, че ART е готов за употреба днес. Това ще бъде в бъдеще, но засега е експериментално и не е подходящо за ежедневна употреба от крайния потребител.

Що се отнася до предимствата на АРТ, има смесениотчети. За повечето рецензенти тестовите устройства се състоят от четириядрени процесори с над 2 гига оперативна памет, което е повече от адекватна настройка за истинско наблюдение на скоростта от ART. Все пак случайните потребители отчитат печалби с над 50% скорост и повече от 30% от живота на батерията. Други твърдят, че това не е нищо повече от плацебо ефект.

Честно казано, нищо не може да се каже преди товастава достъпна за масите и губи експерименталния маркер. Следователно ще спестим този дебат за по-късно. Това, което може да се каже със сигурност със сигурност, е, че АРТ е бъдещето. Google ще започне с компилация преди време, за да може истински да съответства на iOS, той е най-големият партньор, а ART ще проправи пътя. Колкото и глупаво да изглежда името или колко непълноценно е в момента, ще продължаваме да виждаме ART все повече и повече.

Коментари