Android Runtime - Android Runtime

Android Runtime
Разработчики)Google
Репозиторийандроид.googlesource.com/Платформа/Изобразительное искусство/
Написано вC, C ++
Операционная системаAndroid (операционная система)
Интернет сайтисточник.android.com/ устройства/ tech/ dalvik/Изобразительное искусство.html Отредактируйте это в Викиданных
Сравнение архитектур Dalvik и ART

Android Runtime (ИЗОБРАЗИТЕЛЬНОЕ ИСКУССТВО) это приложение среда выполнения используется Android Операционная система. Замена Дальвик, то виртуальная машина процесса изначально использовавшийся Android, ART выполняет перевод приложения байт-код в родные инструкции которые позже выполняются средой выполнения устройства.[1]

Android 2.2 «Froyo» привел JIT-компиляция на основе трассировки в Dalvik, оптимизируя выполнение приложений за счет постоянного профилирование приложения каждый раз, когда они запускаются и динамически составление часто выполняемые короткие сегменты своего байт-кода в собственный Машинный код. Хотя Дальвик интерпретирует остальная часть байт-кода приложения, собственное выполнение этих коротких сегментов байт-кода, называемых «трассировками», обеспечивает значительные улучшения производительности.[2][3]

В отличие от Dalvik, ART вводит использование заблаговременная (AOT) компиляция путем компиляции целых приложений в машинный код после их установки. Исключая интерпретацию Dalvik и JIT-компиляцию на основе трассировки, ART повышает общую эффективность выполнения и снижает энергопотребление, что приводит к повышению автономности батареи при мобильные устройства. В то же время ART обеспечивает более быстрое выполнение приложений, улучшенное выделение памяти и вывоз мусора (GC) механизмы, новые приложения отладка функции и более точное профилирование приложений на высоком уровне.[1][4][5]

Поддерживать Обратная совместимость, ART использует тот же входной байт-код, что и Dalvik, предоставляемый через стандартные .dex файлы как часть Файлы APK, в то время как .odex файлы заменяются на Исполняемый и связываемый формат (ELF) исполняемые файлы. После того, как приложение скомпилировано с использованием устройства ART dex2oat утилита, она запускается исключительно из скомпилированного исполняемого файла ELF; в результате ART устраняет различные накладные расходы на выполнение приложений, связанные с интерпретацией Dalvik и JIT-компиляцией на основе трассировки. Как недостаток, ART требует дополнительного времени для компиляции при установке приложения, а приложения занимают немного больше времени. вторичное хранилище (что обычно флэш-память ) для хранения скомпилированного кода.[1][4][5]

Android 4.4 «KitKat» принес превью технологии of ART, включая его в качестве альтернативной среды выполнения и сохраняя Dalvik в качестве виртуальной машины по умолчанию.[6][7] В следующем основном выпуске Android Android 5.0 «Леденец», Далвик был полностью заменен на АРТ.

Android 7.0 «Нуга» переключил его Среда выполнения Java к OpenJDK, представляя JIT-компилятор с профилированием кода для ART, который позволяет постоянно улучшать производительность приложений Android по мере их запуска. Компилятор JIT дополняет текущий компилятор ART Ahead of Time и помогает повысить производительность во время выполнения.[8]

Смотрите также

Рекомендации

  1. ^ а б c Андрей Фрумусану (1 июля 2014 г.). «Более пристальный взгляд на Android RunTime (ART) в Android L». АнандТех. Получено 5 июля, 2014.
  2. ^ Бен Ченг; Билл Бузби (май 2010 г.). "JIT-компилятор для Android Dalvik VM" (PDF). android-app-developer.co.uk. Google. С. 5–14. Архивировано из оригинал (PDF) 6 ноября 2015 г.. Получено 18 марта, 2015.
  3. ^ Фил Никинсон (26 мая 2010 г.). «Разработчик Google Android подробнее рассказывает о Dalvik и JIT во Froyo». androidcentral.com. Получено 8 июля, 2014.
  4. ^ а б «Разработчики Android: ART и Dalvik». source.android.com. 9 марта 2015 г.. Получено 18 марта, 2015.
  5. ^ а б «Разработчики Android: настройка ART - Как работает ART». source.android.com. 9 марта 2015 г.. Получено 18 марта, 2015.
  6. ^ Шон Бакли (6 ноября 2013 г.). "'Эксперимент ART в Android KitKat увеличивает время автономной работы и ускоряет работу приложений ». Engadget. Получено 5 июля, 2014.
  7. ^ Дэниел П. (7 ноября 2013 г.). «Экспериментальная среда выполнения Google ART в Android KitKat может в два раза ускорить выполнение приложений». phonearena.com. Получено 5 июля, 2014.
  8. ^ «Внедрение компилятора ART Just-In-Time (JIT)». source.android.com. 22 января 2017 г.. Получено 22 января, 2017.

внешняя ссылка