Поиск по сайту:

» Как устроена архитектура Android?

09.06.2011 рубрика: Технологии и интернет

Как устроена архитектура Android?

Информация об архитектуре Android вряд ли заинтересует читателей, не связанных с программированием, но все же я не могу оставить эту тему без внимания. Android – это программный стек для мобильных устройств, который включает операционную систему, программное обеспечение промежуточного слоя (middleware), а также основные пользовательские приложения (e-mail-клиент, календарь, карты, браузер, контакты и другие).

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

Следующий уровень в иерархической системе – библиотеки, написанные на C/C++. В медиабиблиотеках (Media Libraries) заложена поддержка основных форматов и кодеков, включая MPEG4, H.264, MP3, WMA, WAV, AAC, AMR, JPG, PNG. Графические библиотеки (3D Libraries) поддерживают API OpenGL ES 1.0 и обеспечивают поддержку аппаратных 3D-ускорителей. Как отмечается, в одном приложении можно одновременно использовать двух– и трехмерную графику. Еще одной примечательной библиотекой является LibWebCore (WebKit) – движок для web-браузера Android, используемый также в популярном браузере Safari от Apple.

Одной из важнейших частей стека является Android Runtime, состоящая из виртуальной Java-машины Dalvik и набора библиотек ядра. Dalvik позволяет поддерживать одновременную работу нескольких приложений и выполняет файлы в специальном формате .dex, оптимизированном для устройств с малым количеством памяти. Библиотеки ядра написаны на языке Java и включают большой набор классов, которые поддерживают широкий диапазон функциональных возможностей.

Следующий уровень – Application Framework (каркас приложений). Этот уровень фактически представляет собой инструментарий, которым пользуются все приложения. Здесь стоит выделить такой компонент, как Content Providers (провайдеры данных), который является уникальной особенностью Android. Провайдеры данных позволяют, например, объединять информацию из интернета с данными телефона – контактной информацией или географической локацией, – чтобы реализовать новые функции. Кроме того, данные могут совместно использоваться разными приложениями.

И, наконец, на вершине пирамиды – уровень приложений (Applications). Что интересно, Android не делает разницы между основными приложениями телефона и сторонним программным обеспечением – таким образом, ключевые компоненты, такие как набор номера, рабочий стол или почтовый клиент GMail, можно заменить альтернативными аналогами. Приложения для Android пишутся на языке Java.

Другие материалы:


Добавьте комментарий:

Ваше Имя:*
Ваш E-Mail:*