Android переходит с виртуальной машины Dalvik на компилятор ART

В основную ветку репозитория AOSP (Android Open Source Project), в рамках которого развивается следующий выпуск платформы Android, приняты изменения по умолчанию активирующие для выполнения приложений новый runtime ART и отключающие использование runtime виртуальной машины Dalvik (libdvm.so). ART позволяет в момент установки скомпилировать приложение в машинный код и в дальнейшем выполнять программу в нативном виде, без задействования виртуальной машины. Применение упреждающей AOT-компиляции (Ahead-of-time) вместо JIT-компиляции по мере выполнения кода позволяет заметно повысить производительность программ. Для компиляции в поставку включена утилита dex2oat, формирующая исполняемые файлы на основе файлов в формате DEX (Dalvik Executable Format).

Повышению производительности также способствует использование в ART более изощрённого сборщика мусора, отличающегося активным распараллеливанием операций и минимизацией действий, приводящих в приостановке выполнения. Кроме того, при использовании ART применяются более жесткие методы проверки приложения в момент установки, а разработчикам предлагаются расширенные инструменты для отладки и профилирования.

Экспериментальная поддержка ART была добавлена в выпуске Android 4.4, но требовала для использования изменения настроек. Переход на ART в AOSP свидетельствует о том, что в следующем значительном выпуске Android данная технология будет применяться по умолчанию.

©  OpenNet