Особенности архитектуры ОС Android
Оценка пользователей: / 19
ПлохоОтлично 
18.12.12 20:01

Операционная система Android живо развернулась на рынке информационных технологий с 23 сентября 2008 года. Эта ОС заняла нишу для портативных коммуникаторов и смартфонов. Для разработчиков и продвинутых пользователей очень важна архитектура и возможности новинки.
Начиная от уровня ядра до уровня приложений путь пролегает через библиотеки, среду выполнения и встроенные программы. Рассмотрев их, можно овладеть достаточной информацией для понимания принципов, заложенных в основу Android.
На рис. 1 представлена архитектура Android OS [3]. Кратко рассмотрим детали каждого уровня, которые нас интересуют.
Рис.1 Структура операционной системы Аndroid
Уровень ядра
На уровне ядра располагаются основные службы управления процессами, памятью, файловой системой. Хотя и основано ядро Android на ядре Linux версии 2.6.29, сама же система Android не является чистой Linuх-системой [3], содержит некоторые отличия и имеет дополнительные специфические расширения ядра - собственные механизмы распределения памяти, взаимодействия процессов и др.
Уровень библиотек
Набор библиотек С/С++, таких как OpenGL, SGL 2-D графики, WebKit, библиотеки шрифтов, SSL, библиотеки поддержки libc, баз данных SQLite и мультимедиа-библиотек (Media Framework) используются различными компонентами ОС Android. Их еще именуют нативными библиотеками [1]. Системная библиотека разработана под мобильные устройства на основе Linux.
Библиотеки этого уровня можно разделить следующим образом по своему функциональному назначению [3]:
  • системная библиотека C;
  • функциональные библиотеки С/С++;
  • менеджер поверхностей.
Использование Application Framework-каркаса приложений позволяет получить разработчикам доступ к функциям этих библиотек. Интерес представляют такие компоненты данного уровня архитектуры Android:
  • SSL (Secure Sockets Layer) библиотека, предназначенная для работы с сокетами, в основу были положены протоколы SSL: SSLvЗ.0 или TLSv1.2. Обеспечивает безопасную передачу данных по сети.
  • Библиотеки мультимедиа (Media Framework), необходимые для реализации задач записи и воспроизведения аудио-и видеоконтента. Поддерживают множество форматов видео-и аудиоданных, список которых постоянно пополняется (MPEG4, Н.264, WAV, PCM, МР3 и др.).
Cреда выполнения
Cреда исполнения - это виртуальная машина Dalvik Virtual Machine, которая играет роль некоторого шлюза. Позволяет приложениям получать доступ к корневым библиотек ОС Android, обеспечивая тем самым необходимую функциональность Java-программ. Хотя Dalvik VM существенно отличается от Java VM.
Каркас программ
Над системными библиотеками и функциональными библиотеками виртуальной машины располагаются основные службы управления операционной системы. Это некоторые «менеджеры», каждый из которых отвечает за свои операции, используемые программами. Выполняемые программы могут включать в себя набор менеджеров и разнообразие их внутреннего и внешнего взаимодействия. Перечислим некоторые из них:
  • менеджер деятельностей (Activity Manager) - менеджер управления активными приложениями, который имеет возможность доступа к истории работы с деятельностями;
  • менеджер пакетов (Package Manager) - менеджер установки и управления, статистического анализа используемого пространства и разрешенных действий пакетов программного обеспечения (ПО), которые загружаются на устройство с целью дальнейшего применения;
  • менеджер окон (Window Manager) - сохраняет окна работающей программы. Позволяет с помощью клавиши <Back> коммуникатора или другого устройства под управлением операционной системы Android просматривать экраны, которые уже использовались, аналогично страницам из кэша в Wеb-браузере, что позволяет разгрузить процессор;
  • менеджер ресурсов (Resource Manager) - обеспечивает доступ к срочным (например XML), графическим (JPEG, PNG) и другим типам файловых ресурсов;
  • контент-провайдеры (Content Providers) - службы управления обменом данными между приложениями, как в одностороннем порядке, так и в двунаправленном;
  • система представлений (View System) - широкофункциональна система для предоставления внешнего вида применений. Отвечает за насыщение графического интерфейса списками, полями редактирования, ввода и вывода, таблицами, графическими элементами, кнопками. Также содержит встроенный Wеb-браузер и много других полезных компонент операционной системы Android;
  • телефонный менеджер - управляет информацией собственно телефонного модуля, способен определять тип сети, статус подключения. Дает самые разнообразные возможности управления телефонными номерами, почтовыми адресами, также отображаются в списке контактов при соответствующих настройках;
  • менеджер местоположения (расположение) - менеджер, с помощью которого обеспечивается определения географических координат, местоположение устройства. Их можно использовать как гео-теги в фотографиях;
  • менеджер сообщений - позволяет любому применению отображать пользовательские сообщения в строке состояния [3].
Уровень приложений
Под уровнем приложений подразумевается набор стандартных программ для устройств, с помощью которых можно осуществлять основные характерные для них них операции: программа для управления контактами, телефонии и СМС, почтовый клиент, встроенный браузер, программы для определения местоположения, поиска адресов на карте, калькулятор, органайзер и т.д. Особенностью данной ОС является то, что стандартные приложения не отличаются приоритетом от стороннего ПО пользовательского уровня приложений, а потому первые можно заменить альтернативними, на свой вкус.
Программирование
Программисты создают программы для ОС с использованием Java, C/C++, что позволяет использовать весь функционал операционной системы. Программы строятся так, чтобы было легко использовать основные компоненты и собственноручно созданные компоненты, входящие в состав архитектуры Android OS.
Вместо заключения
Покажем, как можно заменить стандартный браузер на Opera Mini.
1. Включаем любую сеть для передачи данных. Пусть это WiFi.
2. Запускаем приложение «Play Market».
3. Задаем слово «Браузер» на поиск. Имеем результат на рис. 2 а).
    
а)                                                 б)                                                в)
Рис. 2. Замена стандартного браузера.
4. Переходим по необходимой ссылке рис. 2 б).
5. Нажимаем «Установить» и ждем, пока приложение загрузится и установится. При установлении появятся стандартные запросы по лицензионному согласию и разрешению на использование данных.
6. При первом переходе после установки браузера по любой ссылке всплывают сообщения как на рис. 2 в). Можно использовать новый браузер по умолчанию вместо встроенного в операционную систему Android.
Совокупность всех рассмотренных моментов говорит о том, что эта OS является гибкой, мощной, быстрой и удобной как для пользователя, так и для разработчиков программного обеспечения, особенно для тех, которые знакомы со спецификой работы с* nix системам.
За материалами:
  1. Хашими С., Коматинени С., Маклин Д. Разработка приложений для Android. — СПб.: Питер, 2011. — 736 с: ил.
  2. Голощапов А. Л. Google Android: программирование для мобильных устройств. — СПб.: БХВ-Петербург, 2011. — 448 с: ил.
Автор Егор Аполонов, магистрант НТУУ «КПИ»
 
>
КнигаНовости Практика поискаПартнерыО нас
Підтримка та дизайн: Могильний С.С. Шаблон: Joomla Templates by BuyHTTP Joomla Hosting