Android Runtime

редактировать

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

Android Runtime (ART ) - это приложение среда выполнения, используемая операционной системой Android . Заменяя Dalvik, виртуальную машину процесса, первоначально используемую Android, ART выполняет перевод байт-кода приложения в собственные инструкции., которые позже выполняются средой выполнения устройства.

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

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

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

Android 4.4 «KitKat» принесла предварительную версию технологии ART, включая его в качестве альтернативной среды выполнения и сохранив Dalvik в качестве виртуальной машины по умолчанию. В последующем основном выпуске Android, Android 5.0 «Lollipop», Dalvik был полностью заменен на ART.

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

См. Также
  • icon Портал компьютерного программирования
Ссылки
Внешние ссылки
На Викискладе есть носители, связанные с Android Runtime.
Последняя правка сделана 2021-06-11 01:23:01
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте