Art замість dalvik чому android 4

Однією з причин популярності мобільної ОС Google стала порівняна легкість розробки додатків для неї. Завдяки цьому магазин програм Google Play швидко наповнився утилітами. Подібне стало можливо за допомогою віртуальної машини Dalvik, яка перетворювала код додатків в зрозумілий процесору мобільника або планшета. Програмісти пишуть так, як їм зручно, і їм не потрібно піклуватися про те, який чіпсет варто в гаджеті користувача: від Qualcomm, Intel, Mediatek, nVidia, Samsung або іншого вендора.

Google вже давно почала боротися з цією проблемою: першим серйозним кроком став проект Project Butter, анонсований разом з Android 4.1 Jelly Bean. Завдяки йому операційна система стала трохи швидше реагувати на дії користувача, але в цілому проблема залишилася. Тому в Google створили готують ART - заміну віртуальній машині Dalvik.

Будь-яка програма використовує безліч стандартних дій: виведення зображення на екран, запис файлів в пам'ять, передачу файлів по Bluetooth або Wi-Fi. Щоб полегшити програмістам життя, операційна система має вбудовані функції для виконання цих завдань. Розробнику достатньо лише в своєму додатку вказати «скопіювати файл ХХХ на карту пам'яті в папку УУУ». Він не піклується про те, як це виконується і скільки для цього потрібно системних ресурсів.

Art замість dalvik чому android 4
Програмісти також часто пишуть «браковані» програми, які мають помилки в коді, «втрачають» пам'ять тощо. Віртуальна машина дозволяє ізолювати утиліти один від одного і від ядра операційної системи. Завдяки цьому крах програми не впливає на ОС та інші запущені програми. Без цього помилка в утиліті веде до зависання всієї системи. Користувачі постарше можуть пам'ятати, як помилки в прикладному ПО приводили до «синього екрану смерті» в настільних ОС Windows 95 і 98, які не мали подібних механізмів віртуалізації.

Файли в форматі APK, які викачує користувач з Google Play Store або будь-якого іншого сервера, - це нескомпілірованний код. Жоден комп'ютер не зможе його виконати, так як просто «не зрозуміє». Якби утиліти поставлялися в уже скомпільованому і зрозумілою «залозу» вигляді, тоді частина з них працювала б, наприклад, на пристроях з чіпсетом Snapdragon, але видавала б помилку при запуску на гаджетах з чіпами Tegra.

Кожен виробник адаптує Dalvik під свій процесор і апаратне забезпечення. Завдяки цьому одна і та ж програма може працювати на гаджетах практично будь-якого виробника без правки її вихідного коду. І саме з цієї причини не можна просто взяти і встановити нову версію Android в пристрій на зразок перевстановлення Windows.

Що такоеDalvik і чому він вимагає заміни

Art замість dalvik чому android 4

Віртуальна машина ART (розшифровується як Android RunTime - середовище виконання програм Android) поки ще перебуває в експериментальній стадії, але її вже можна спробувати в Android 4.4 KitKat. Користувачі пристроїв з цією версією ОС можуть переключитися з встановленого за замовчуванням Dalvik на ART.

Art замість dalvik чому android 4
Основна відмінність між цими віртуальними машинами - це підхід до компіляції. Якщо Dalvik перетворює код в реальному часі відразу після запуску утиліт, то ART робить це завчасно при установці. Це означає збільшення часу установки утиліт і більший яку він обіймав обсяг в флеш-пам'яті пристрою. Але це ж означає і прискорення запуску і зменшення вимог до апаратних ресурсів, особливо обсягом ОЗУ. Ось чому Android 4.4 KitKat, за словами Google, зможе швидко і стабільно працювати на гаджетах з об'ємом оперативної пам'яті в 512 МБ. Новий підхід до перетворення коду дозволить також зменшити споживання заряду батареї.

Art замість dalvik чому android 4
Порівняйте обсяг одних і тих же програм при використанні Dalvik (зліва) і ART (праворуч)

В цілому віртуальна машина ART обіцяє багато покращень в порівнянні з існуючою Dalvik. Переваги та недоліки кожної можна побачити в таблиці нижче:

Схожі статті