Особливості архітектури ОС Android
Рейтинг статті: / 18
НайгіршеНайкраще 
Вівторок, 18 грудня 2012, 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