Основные сведения о среде выполнения Android, функциях и предполагаемых изменениях

Введение

Среда выполнения Android является частью пяти компонентов архитектуры Android. Другими являются системные приложения, платформы приложений, библиотеки, уровень аппаратной абстракции (HAL) и ядро ​​Linux.

Android Runtime (ART) и Dalvik считаются двумя хорошими средами выполнения, которые были частью операционной системы Android (ОС) с момента ее создания. Согласно Google Developer, ART — это управляемая среда выполнения, используемая приложениями и некоторыми системными устройствами на Android, необходимая для выполнения спецификаций формата исполняемого файла Dalvik и байт-кода Dex.

И как часть архитектуры Android, ART имеет виртуальную машину Java под названием Dalvik Virtual Machine (DVM), которая необходима для запуска основных функций Linux.

Использование DVM позволяет отдельным приложениям Android работать независимо, полностью используя свои конкретные экземпляры DVM.

Следовательно, независимо от конкретного приложения на устройстве, DVM позволяет эффективно запускать их без проблем, которые могут негативно повлиять на время выполнения из-за того, что приложения находятся на одном устройстве Android.

Обзор среды выполнения Android (ART) и среды выполнения Dalvik

В программировании время выполнения обозначает период работы программы, от выполнения/открытия до закрытия/выхода, поэтому полезно понимать среды выполнения (RTE) и виртуальные машины. ART и Dalvik — это виртуальные машины, необходимые для запуска приложений Android.

Во-первых, байт-код Dalvik (Dex) представляет собой скомпилированный код ( .dex files) из стандартных скомпилированных файлов Android ( .class files) перед запуском приложения.

В целом, файлы dex представляют собой исполняемые файлы, сохраненные в формате, содержащем скомпилированный код Android, т. е. «Dalvik Executable», для выполнения виртуальной машиной. Следовательно, и ART, и Dalvik являются средами выполнения, которые могут эффективно запускать байт-код Dex.

Современные устройства и приложения Android используют среду выполнения ART вместо среды выполнения Dalvik.

Примечательно, что среда выполнения Dalvik была прекращена с новым внедрением ART и ранее использовалась для запуска устройств Android до появления Android Lollipop (версии 5.0 — 5.1.).

Пункт ниже суммирует некоторые аспекты Dalvik и ART:

  • Dalvik и ART — это две разные виртуальные машины, используемые в операционной системе Android для выполнения приложений Android.
  • Dalvik была оригинальной виртуальной машиной, использовавшейся в Android до Android 5.0. Он был разработан для эффективного запуска нескольких экземпляров виртуальных машин с использованием JIT-компилятора для оптимизации производительности приложений во время выполнения. Однако у него были некоторые ограничения с точки зрения управления памятью и эффективности.
  • ART (Android RunTime) — преемник Dalvik, представленный в Android 5.0. Он использует компилятор с опережением времени (AOT) для предварительной компиляции приложений перед их выполнением, что позволяет сократить время запуска приложений и улучшить управление памятью. ART также включает дополнительные функции, такие как улучшенная сборка мусора и улучшенная поддержка отладки.
  • Критическое различие между Dalvik и ART заключается в их стратегии компиляции. Dalvik использует компилятор JIT, который компилирует код по мере его выполнения. С другой стороны, ART использует компилятор AOT, который предварительно компилирует код перед его выполнением, что приводит к повышению производительности за счет увеличения объема памяти.
  • Еще одно отличие состоит в том, что ART обеспечивает лучшую поддержку выполнения собственного кода, что полезно для приложений, требующих высокопроизводительных вычислений. Кроме того, ART предлагает улучшенные функции безопасности, такие как принудительное применение разрешений во время выполнения и улучшенная изоляция приложений.
  • В целом ART представляет собой значительное улучшение по сравнению с Dalvik с точки зрения производительности, управления памятью и безопасности.

Значение среды выполнения Android (ART) по сравнению с другими компонентами

Среда выполнения Android является лишь одной из пяти основных частей архитектуры Android и играет важную роль в дополнении других компонентов.

В архитектуре, показанной на рисунке ниже, компонент среды выполнения следует за ядром Linux и переплетается между платформой приложений и приложениями.

Следовательно, среда выполнения Android обеспечивает взаимосвязь внутри домена Android.

Точно так же значение ART вытекает из его основного назначения в качестве виртуальной машины (ВМ). Прежде всего, с включенной DVM возможен запуск нескольких/разных виртуальных машин (ВМ), что позволяет успешно запускать различные приложения.

Таким образом, вместо одного приложения, расположенного на уровне «Приложения» в архитектуре Android, среда выполнения Android через DVM делает возможным запуск всех приложений.

Сводка

В домене мобильных устройств существуют разные операционные системы (ОС). ОС Android стала очень популярной и широко используемой с момента ее создания в 2007 году и первого выпуска Android 1.0 23 сентября 2008 года.

Начальная и окончательная работа устройств Android зависит от производительности и завершения работы различных частей, составляющих архитектуру Android.

Архитектура Android состоит из четырех основных разделов, разделенных на пять частей, играющих ключевую роль в ОС Android.

К ним относятся уровень приложений, уровень инфраструктуры приложений, библиотеки Android, уровень среды выполнения Android и ядро ​​​​Linux. Среда выполнения (ART) является неотъемлемой частью архитектуры Android и играет ключевую роль в выполнении спецификаций байт-кода Dex.

ART (Android RunTime) — это текущая виртуальная машина по умолчанию, используемая в Android, начиная с Android 5.0 (Lollipop) и более поздних версий.

Dalvik была оригинальной виртуальной машиной, использовавшейся в Android до выпуска Android 5.0. Однако, несмотря на то, что ART заменила Dalvik в качестве виртуальной машины по умолчанию, некоторые старые устройства Android могут по-прежнему использовать Dalvik, если они не были обновлены до более новой версии Android.