Архитектура Android

В предыдущем уроке вы узнали, что такое Android, какие есть версии Android и какие функции он поддерживает. Теперь, когда у вас есть базовое понимание и знания об Android, в этом руководстве мы изучим Android Software Stack (Стек программного обеспечения Android) см. схему расположенную ниже, которая поможет вам понять, как Android работает внутри устройства.

Объяснение архитектуры платформы Android

System Application — системные приложения
Application Framework — каркас приложения
Libraries — библиотеки
Android Runtime (ART) — среда выполнения Android
Hardware Abstraction Layer (HAL) — уровень аппаратной абстракции
Linux Kernel — ядро Linux
Power Managment — управление энергопотреблением

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


Ядро Linux

Этот уровень является основой платформы Android.

  • Содержит все драйверы низкого уровня для поддержки различных аппаратных компонентов.
  • Среда выполнения Android полагается на ядро ​​Linux для основных системных служб, таких как:
    • Память, управление процессами, многопоточность и т. д.
    • Сетевой стек
    • Модель драйвера
    • Безопасность и многое другое.

Уровень аппаратной абстракции (HAL)

  • Обеспечивает абстракцию между оборудованием и остальной частью программного стека.

Среда выполнения Android (ART)

  • Предназначен для запуска приложений в ограниченной среде, которая имеет ограниченную мощность с точки зрения батареи, обработки и памяти.
  • Начиная с Android 5.0, каждое приложение запускается в собственном процессе в собственном экземпляре виртуальной машины ART, что делает управление процессами более важным.
  • АРТ использует DEX files, который представляет собой тип байт-кода, специально разработанный для Android, который помогает ART более эффективно управлять памятью.
  • Содержит набор основных библиотек, позволяющих разработчикам писать приложения для Android с использованием программирования на Java.
  • До Android 5.0 Dalvik использовался как среда выполнения Android.
  • ART поддерживает две компиляции Ahead-of-time (AOT) и Just-in-time (JIT).
  • Он также имеет очень эффективную сборку мусора.

Библиотеки

  • Доступно разработчикам через Android Application Framework (каркас приложения).
  • Содержит библиотеки C / C ++, используемые компонентами систем Android.
  • Некоторые функции включают следующие библиотеки:
    • Библиотека SQLite, используемая для хранения данных и облегчения с точки зрения использования мобильной памяти и выполнения задач.
    • Библиотека WebKit в основном предоставляет движок веб-просмотра и многие другие связанные с ним функции.
    • Библиотека диспетчера поверхностей отвечает за рендеринг окон и поверхностей для рисования различных приложений на экране.
    • Библиотека медиа-инфраструктуры предоставляет медиа-кодеки для аудио и видео.
    • OpenGl (открытая графическая библиотека) и SGL (масштабируемая графическая библиотека) — это графические библиотеки для 3D- и 2D-рендеринга соответственно.
    • Библиотека FreeType используется для визуализации шрифтов.

Фреймворк приложения

  • Это набор API, написанных на Java, который дает разработчикам доступ к полному набору функций ОС Android.
  • Разработчики имеют полный доступ к тем же API-интерфейсам фреймворка, которые используются в основных приложениях, так что они могут расширить функциональные возможности своего приложения.
  • Позволяет и упростить повторное использование основных компонентов и служб, например:
    • Activity Manager: управляет жизненным циклом приложений и предоставляет общий стек для навигации.
    • Window Manager: управляет окнами и поверхностями рисования и является абстракцией библиотеки диспетчера поверхностей.
    • Content Providers: Позволяет приложению получать доступ к данным из других приложений или обмениваться собственными данными, т. е. предоставляет механизм для обмена данными между приложениями.
    • View System: Содержит стандартные блоки пользовательского интерфейса, используемые для создания пользовательского интерфейса приложения, включая списки, сетки, тексты, поля, кнопки и т. д., а также выполняет управление событиями элементов пользовательского интерфейса (это будет объяснено в последующих роках).
    • Package Manager: управляет различной информацией, связанной с пакетами приложений, которые в настоящее время установлены на устройстве.
    • Telephony Manager: позволяет приложению использовать телефонные возможности устройства.
    • Resource Manager: обеспечивает доступ к ресурсам, не связанным с кодом (локализованные строки, растровые изображения, графика и макеты).
    • Location Manager: управляет возможностями определения местоположения.
    • Notification Manager: разрешает приложениям отображать настраиваемые оповещения в строке состояния.

Системные приложения

  • Верхнюю часть стека приложений Android занимают системные приложения и тонны других приложений, которые пользователи могут загрузить из официального магазина Android Play, также известного как Google Play Store.
  • Набор основных приложений предварительно упакован в телефон, например, почтовый клиент, программа для SMS, календарь, карты, браузер, контакты и некоторые другие.
  • Этот уровень использует все нижележащие уровни для правильного функционирования этих мобильных приложений.

Итак, как мы видим и понимаем, Android имеет многоуровневые или, можно сказать, сгруппированные функции в виде программного стека, который позволяет Android работать очень плавно на любом устройстве.


Устройства Android

Устройства под управлением ОС Android бывают самых разных форм и размеров. Ниже перечислены различные устройства, работающие под управлением ОС Android и приложений.

  • Смартфоны
  • Смарт-часы
  • Планшеты
  • Нетбуки
  • MP4 плееры
  • Интернет-телевидение и многое другое.

Android Market

В августе 2008 года, примерно через год после приобретения Android, Google анонсировала Android Application Market — онлайн-магазин приложений для устройств Android. Позднее этот интернет-магазин получил название Google Play Store и был предоставлен пользователям в октябре 2008 года, что позволило пользователям напрямую загружать любые сторонние приложения на свои устройства. В Play Store доступны как платные, так и бесплатные приложения. Google market store внесла большой вклад в популярность операционная система android, так как позволяет с легкостью скачивать и устанавливать качественные и безопасные приложение для смартфонов, а для разработчиков позволяет выставлять свои приложения на своей площадке Google market store.


В заключение этого урока хочу сказать, что архитектура операционной системы android очень продуманна и поэтому android такой популярный.

Поделись с друзьями:

Оставьте комментарий