Microsoft Word

Версии андроид. Внутреннее устройство систем Android Андроид операционная

Версии андроид. Внутреннее устройство систем Android Андроид операционная

Android – это одна из популярнейших и наиболее перспективных операционных систем для различных мобильных устройств. Система предлагает очень удобный инструментарий и максимальную гибкость настроек, что позволяет каждому пользователю смартфона или планшета на Андроиде настроить его полностью под свои нужды. Разработка данной операционной системы стартовала в далеком 2003-м году, но по-настоящему известной она стала лишь через 2 года – после приобретения компанией Google. Переломный момент в истории Android произошел осенью 2008-го года. Тогда компания Google продемонстрировала T-Mobile G1, ставший первым смартфоном под управлением Андроид. Именно в тот момент многие мировые производители обратили внимание на перспективную операционную систему.

(самая первая версия)

Основные возможности операционной системы Android

Рассматриваемая ОС всегда позиционировалась своими разработчиками как система с открытым кодом. Это позволяет любому желающему создавать свои приложения, игры и прочие дополнения для расширения возможностей Андроид-гаджетов. Разработчики изначально продумали все так, чтобы операционная система работала максимально быстро даже на самом «бюджетном» железе. Это является несомненным плюсом, т.к. теперь даже люди с самыми скромными финансовыми возможностями могут наслаждаться всеми основными преимуществами современных смартфонов.


(Android 5.0)

Открытостью системы охотно пользуются и производители мобильной электроники, выпуская собственные пользовательские интерфейсы, к примеру, Sense от компании HTC. Это делает гаджеты на Андроиде от разных производителей непохожими друг на друга. Любителям классического и «чистого» Android следует обратить свое внимание на устройства Nexus. Именно они традиционно первыми получают обновления.

Сроки обновления других устройств обычно затягиваются ввиду необходимости доработки фирменных оболочек в соответствии с особенностями новых версий ОС.

Главным источником игр и приложений является Play Маркет. В каталогах данного магазина доступен огромный выбор бесплатного и платного контента, ассортимент которого активно расширяется. Качество «андроидных» игр и приложений постоянно растет. Периодически различные приложения выпускает и сам Google.

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

Желающим приобрести смартфон на Android необходимо помнить, что многие функции и программы ориентированы на работу с интернетом. При отсутствии доступа к Wi-Fi рекомендуется подключить выгодный тариф для интернет-пользователей или же отключить некоторые функции, требующие выхода в сеть.

Также нельзя не отметить ограниченную автономность устройств на Андроиде, в особенности представителей предыдущих поколений. При активном использовании смартфон или планшет придется заряжать ежедневно, а в некоторых случаях и по 2 раза в сутки. Производители активно работают над исправлением этого недостатка и в последнее время на рынке стали появляться интересные устройства с заметно увеличенной автономностью. Не остаются в стороне и разработчики. С каждой новой версией операционная система «кушает» все меньше заряда.

На основании приведенной информации можно выделить ключевые преимущества и недостатки рассматриваемой операционной системы. Так, несомненными преимуществами Андроида является:
1. Открытость программного кода, что дает возможности для разработки практически любых приложений и игр.
2. Нетребовательность к «железу» устройства.
3. Огромный ассортимент приложений и увлекательных игр на любой вкус.
4. Полное соответствие современным представлениям о функционале смартфона.
5. Свобода действий для пользователя. При желании система и ее интерфейс с легкостью настраиваются под нужды владельца.
6. Популярность операционной системы среди подавляющего большинства современных производителей. Это позволяет пользователю с практически любым бюджетом купить функциональный и современный смартфон.

Есть и свои недостатки. Ключевыми являются:

1. Открытость программного кода. Да, ее можно одновременно отнести и к преимуществам, и к недостаткам. Недостатком это является по той причине, что производители мобильных устройств в большинстве своем предпочитают создавать собственные оболочки. Из-за этого появляются существенные временные задержки между официальным выходом обновления ОС и ее получением на различные устройства.
2. Сравнительно низкая автономность. В последнее время в данном направлении был сделан огромный шаг вперед, так что уже совсем скоро шутки о том, что «Смартфоны на Андроиде самые спортивные, т.к. у них 2 раза в день зарядка» станут не более чем забавной историей.

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

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

Покупая новый смартфон, вам придётся привыкать к его операционной системе. Конечно, можно попытаться установить кастомную прошивку, чтобы приспособить гаджет под свои нужды. Но это занятие не для всех. Так что лучше прикинуть, какая ОС на основе Android вам понравится больше до покупки очередного девайса. Разбираемся, что из себя представляют версии Android и чем они различаются.

Это Android в том виде, в котором он и должен . Оболочка его полностью соответствует стилю Material Design и выглядит аккуратно и минималистично. Небольшое количество графических наворотов и предустановленных приложений гарантирует быстродействие и стабильность работы.

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

Отличительная особенность Samsung Experience - куча родных сервисов от Samsung. Например, магазин приложений Galaxy Apps, фитнес-трекер Samsung Health и платёжный сервис Samsung Pay.

Преимущества: очень много функций. Хорошая настраиваемость оболочки. Полезная панель уведомлений, Smart Stay, множество различных жестов.

Недостатки: сервисы Samsung по большей части дублируют возможности Google, и они будут полезны только для ограниченного числа пользователей. Родной дизайн Samsung Experience - на любителя. Много предустановленных приложений, которые не удалить без .

MIUI

В OxygenOS есть встроенный App Locker, умеющий защищать конфиденциальные данные в выбранных вами приложениях с помощью пароля или отпечатка пальца. Лаунчер OxygenOS позволяет детально настраивать внешний вид и размер значков на домашнем экране и в меню приложений.

Преимущества: оперативные обновления. Нет собственных сервисов, навязываемых компанией - вместо них родные сервисы Google. Интерфейс Material Design аскетичен, но красив, и все приложения - как встроенные, так и устанавливаемые пользователем - смотрятся в нём как родные. Большое количество жестов.

Недостатки: некоторые виджеты сторонних приложений в OxygenOS ведут себя странно.

Фирменная оболочка HTC обладает неплохой настраиваемостью. Здесь есть приложение «Темы», которое может изменить стиль вашего домашнего экрана практически до неузнаваемости. А также персональный помощник Sense Companion, который умеет напоминать вам о событиях календаря, сообщать , служит фитнес-трекером и помогает оптимизировать производительность телефона. Правда, эта штука имеется только в серии HTC U, а её возможности к обучению, заявленные производителем, на практике оказываются несколько переоценёнными.

Ещё одна интересная фича HTC Sense - функция «сжатия смартфона», появившаяся в новом флагмане компании HTC U11. Сожмите телефон в руке, и HTC Sense выполнит заданное вами действие. Например, запустит выбранное заранее приложение. В остальном оболочка от HTC весьма напоминает родной Android.

Преимущества: забавная функция сжатия смартфона. Режим Freestyle позволяет гибко настроить внешний вид домашнего экрана.

Недостатки: встроенные приложения Sense Companion и Blinkfeed не особенно полезны. Родные иконки - на любителя.

Flyme


Flyme для устройств Meizu отличается собственным симпатичным дизайном. Красивые анимации и круглые иконки добавляют системе самобытности, хотя влияние MIUI даёт о себе знать. Фишки прошивки - специальные режимы для гостей и детей, фирменный магазин приложений и тем, а также встроенный чистильщик и оптимизатор. Системой поддерживается тонкая настройка питания и быстродействия устройств с Flyme.

Преимущества: дизайн выглядит необычно и свежо. Обновления получают даже не самые новые смартфоны компании. Flyme можно устанавливать и на смартфоны не от Meizu. Правда, как всегда, это потребует плясок с бубном.

Недостатки: некоторые встроенные приложения выглядят аляповато, а родной магазин Flyme и вовсе не нужен - есть же Google Play.

Современные пользователи смартфонов и планшетов вряд ли зададут вопрос, который вы видите в заглавии этой темы, однако давайте не будет забывать, что на свете можно найти огромное количество людей, которые в принципе не знакомы с мобильной техникой. А значит, они не знакомы с таким определением, как «андроид». Что это?

Фактически, слово «андроид» имеет несколько значений:

  • Человекоподобный робот
  • Одноименный фильм
  • Операционная система

Наибольший интерес вызывает последний пункт, о нем и поговорим.

На момент написания статьи Android является самой популярной мобильной операционной системой и вряд ли что-то изменится в ближайшие годы, ведь, по данным на 2014 год, именно ОС Android была установлена аж в 86% смартфонов, проданных за второй квартал того же года.

Логотип Android — зеленый робот, вот он:

Изначально операционная система разрабатывалась одноименной компанией — Android Inc., которую в 2004 году выкупил интернет-гигант Google. Однако первая версия операционной системы официально вышла значительно позже, лишь в сентябре 2008 года. Почему примечательно? По той причине, что операционная система iPhone OS, которая в дальнейшем была переименована в iOS, появилась более чем на год раньше, однако это не помешало занять Android лидирующие позиции. Есть мнение, что если бы iOS использовалась не только на устройствах Apple, но и на любых других, скорее всего, именно она была бы сейчас самой популярной мобильной операционной системой в мире. Впрочем, история не терпит сослагательного наклонения.

К слову, вот первое устройство на базе Android — HTC Dream (T-Mobile G1):

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

Изначально OS Android использовалась только на смартфонах, однако сегодня все значительно поменялось. Так, вы можете встретить Android на планшетах, электронных книгах, умных часах, смартбуках, игровых приставках, телевизорах и т.д.

Что позволяет делать OS Android?

Если прежде мы использовали телефоны для звонков и отправки SMS-сообщений, то с появлением и развитием смартфонов на базе Android, как упоминалось выше, мы получили полноценный компактный компьютер. А может, даже больше: например, некоторые смартфоны позволяют получать фотоснимки едва ли не на профессиональном уровне.

Что касается операционной системы Android, она позволяет пользоваться интернетом, играть в самые различные игры, смотреть видеоролики, слушать аудиозаписи, чатиться в мессенджерах, устанавливать и запускать самые различные приложения, включая даже графические редакторы, работать с внешними устройствами и т.д. Разумеется, смартфоны позволяют совершать звонки, причем многие модели поддерживают 2 сим-карты, а некоторые — 3 и даже более!

Кстати, некоторые пользователи спрашивают, почему различается внешний вид операционной системы Android в зависимости от устройства? Различаются так называемые ланучеры (лончеры) — это графический интерфейс пользователя. То есть внешний вид рабочего стола, иконок, меню может быть абсолютно разный на различных устройствах, однако все они работают на базе Android. Это тоже одна из особенностей данной операционной системы. Посмотрите на разницу:

Надо отметить, что Google постоянно модернизирует OS Android. Однако вы должны понимать, что не все устройства поддерживают последние версии Android — на некоторые обновлений вообще нельзя дождаться! Почему? Скорее всего, по той причине, что создатель устройства не видит в этом смысла, к тому же это зачастую «заставляет» пользователя сменить устройство на более новое. Между прочим, на «старые» модели iPhone тоже нельзя установить свежие версии прошивок.

Как бы там ни было, операционная система Android — одна из лучших в мире. Возможно, самая лучшая в мире, что косвенно может подтвердить ее популярность.

Мобильные устройства на платформе Android довольно популярны на рынке телефонии. ОС "Андроид" идеально подходит для телефонов и планшетов. Благодаря большому объему памяти и высоким техническим характеристикам работа с данной операционной системой становится намного проще.

ОС "Андроид": описание

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

Помимо уже существующей техники, в будущем планируется выход телевизоров на базе "Андроид", которые, несомненно, станут неотъемлемой частью современной жизни. Сейчас же активно ведутся разработки новых приложений, которые помогут синхронизировать работу между мобильным телефоном на платформе Android и автомобильными устройствами, такими как GPS-навигаторы. При этом каждое обновление прошивки системы расширяет функционал устройства, полностью подстраивая его под пользователя.

Как синхронизировать систему с Google?

Система "Андроид" открывает море возможностей: использование карт Google Maps, электронной почты и т.д. Чтобы пользоваться всеми сервисами через одно устройство Android, достаточно синхронизировать систему с Google. Для этого необходимо просто ввести свои данные (логин и пароль), после чего ОС самостоятельно подключится ко всем приложениям.

Помимо стандартных аппликаций, не так давно вышли в свет и совершенно новые разработки. Так, например, пользователям коммуникаторов программа Google Voice позволит обмениваться информацией, не прикладывая больших усилий. После синхронизации устройства с Google пользователи также смогут работать с приложением Play Market, с помощью которого на телефон или планшет можно установить море различных игр и программ (как платных, так и бесплатных).

Секреты "Андроид" для начинающих

Чтобы работа с устройством на данной платформе была еще проще, продвинутые пользователи нашли несколько полезных функций. Секреты "Андроид" помогут по максимуму оптимизировать систему и настроить ее под себя.

Первой довольно полезной функцией считается быстрый набор. Всем известно, что система "Андроид" имеет несколько рабочих столов, на которых размещаются ярлыки различных приложений. Так вот, чтобы упростить набор контактов, достаточно нажать на свободном месте экрана, выбрать меню «Ярлык» и «Контакты», а после этого отметить самый популярный номер и поместить его на рабочий стол. Теперь набор этого контакта будет осуществляться одним нажатием на ярлык.

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

Бывают такие ситуации, когда набирать большой текст вручную совсем неудобно. Для этого и существует такая функция, как голосовой поиск. Не все начинающие пользователи знают секреты "Андроид", а заметить небольшой значок в виде микрофона на строке поиска Google не так просто. Поэтому мало кто пользуется такой полезной функцией. А ведь нужно всего-то нажать на этот значок и произнести вопрос, который сразу же становится текстом.

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

И это только несколько советов. На самом деле скрытых возможностей существует намного больше. Небольшие секреты "Андроид" помогут наладить работу операционной системы и максимально настроить ее под пользователя.

Как узнать больше об установленной системе?

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

Вариант 1. Узнать некоторые системные данные можно с помощью стандартных настроек. Достаточно открыть настроечное меню, далее необходимо выбрать пункт «О телефоне». В некоторых устройствах после этого открывается список информации о системе. Если же на экране появилась не вся информация, нужно нажать на пункт «Версия ПО». Здесь можно будет найти основные данные об операционной системе устройства.

Вариант 2. Этот способ подойдет тем, кому требуются расширенные данные об ОС. Чтобы получить эту информацию, необходимо скачать специальную программу с Play Market, после чего открыть ее. Вся системная информация появится на экране.

Перепрошивка "Андроид" системы

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

В-первую очередь стоит обратить внимание на устройство. Не все мобильные гаджеты поддаются перепрошивке. Тем более что на китайских устройствах данное действие вообще не предусмотрено. Самостоятельное вмешательство в операционную систему только выведет из строя девайс. Так что размышляя о том, как установить операционную систему, следует, прежде всего, определиться с тем, что приоритетнее в данной ситуации - более новая версия или нормально работающий гаджет.

Лучшие программы для синхронизации устройства с ПК

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

Android PC Suite делает возможным совершение звонков и отправку сообщений через компьютер. Кроме того, с помощью этого приложения можно сделать резервную копию всех данных на устройстве.

Задачи, заметки и календарь, а также устанавливает драйвера на мобильный гаджет.

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

Те, кто использует iPhone давно, знают, как работали ранние версии iOS. Фактически это была однозадачная операционка, которая позволяла работать в фоне или прерывать работу текущего приложения только предустановленным приложениям: вы читаете книжку, вам звонят - книгочиталка сворачивается, и на экране появляется окно звонка. А вот обратная операция невозможна: книгочиталка не только не может прервать работу других приложений, но и будет убита сразу после сворачивания.

Смысл существования такой системы, конечно же, в том, чтобы сэкономить процессор, оперативную память, а также ресурс батареи. Благодаря ей (но не только) iPhone мог работать быстро в условиях ограниченных ресурсов и очень бережно относился к батарее.

Как устроена операционная система Андроид

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

Имея права root, настройки lowmemorykiller можно регулировать напрямую или с помощью специальных приложений

Важным элементом системы многозадачности были службы (service). Это особые компоненты приложений, которые могли работать в фоне абсолютно в любых условиях: включен экран или выключен, свернуто приложение или развернуто, службам плевать даже на то, запущено ли родительское приложение вообще. Оно просто говорило: «Эй, Android, мне нужны ресурсы процессора, я хочу сделать некоторые расчеты» - и получало эти ресурсы. В терминологии Android такой запрос к системе называется wakelock (а если точнее - процессорный wakelock).

Однако поддержка такого мощного и полезного инструмента сыграла с Google злую шутку. Появилось огромное количество приложений, которые плодили службы на каждый чих, постоянно выполняли какую-то работу и не давали смартфону спать. Установив на смартфон сотню приложений, пользователь получал несколько десятков служб, каждая из которых периодически что-то делала (обновить ленту твиттера, пока телефон спит, - это же так важно).

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

Продвинутые юзеры шли другим путем: они получали права root и устанавливали приложение Greenify, которое позволяло заморозить службы выбранных приложений так, чтобы их уже никто не смог разбудить. Существовали и более радикальные варианты, например снести весь софт, которым пользуешься реже одного раза в сутки.

Сама Google также предпринимала определенные действия для борьбы с «ядовитыми» службами. Большой шаг в этом направлении был сделан в Android 4.4, где появился интеллектуальный механизм, который определял, не работает ли служба слишком много времени и не сильно ли она грузит процессор, и, если это оказывалось так, прибивал ее на месте и не давал запуститься. Даже на поверхностный взгляд эта версия системы жила на батарейке заметно дольше предыдущих.

В Android 6.0 Google пошла еще дальше и оснастила ее механизмом Doze , который после определенного времени неактивности смартфона (около одного часа) переводил его в специальный энергосберегающий режим. Одна из особенностей этого режима - запрет на wakelock, то есть ни приложения, ни службы просто не могут разбудить смартфон, чтобы выполнить какую-либо работу. На глаз Android 6.0 не стал жить дольше, так что неизвестно, сработал ли этот механизм вообще.


Шкала работы Doze

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

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

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

На самом деле нет. Google шла к запрету служб еще с версии 5.0, где появился так называемый JobScheduler . Это специальная подсистема, которая позволяет приложениям попросить Android выполнить ту или иную работу в такое-то время или при возникновении такого-то события (подключение к интернету, например). И да, JobScheduler сильно напоминает аналогичную функцию из iOS.

Binder

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

Друг с другом и с операционной системой приложения могли общаться только через IPC-механизм Binder , который требовал авторизации на выполнение того или иного действия. Этот же механизм использовался и для несколько других целей: с его помощью система оповещала приложения о системных событиях, таких как входящий вызов, пришедшее СМС, втыкание зарядки и так далее. Приложения получали сообщения и могли на них отреагировать.


Работу Binder обеспечивают драйвер в ядре Linux и Service Manager

Эта особенность дала Android очень широкие возможности автоматизации, о которых мы знаем благодаря таким приложениям, как Tasker, Automate или Locale. Все эти приложения доступны и для Android 8, разве что некоторые опасные возможности, такие как включение/выключение режима полета, теперь запрещены для использования обычными приложениями.

Система оповещения базируется на интентах (intent) , специальном механизме, реализованном поверх Binder и предназначенном для обмена информацией между приложениями (или ОС и приложениями), а также запуска компонентов приложений. С помощью интентов можно оповещать приложения о событиях, попросить систему открыть приложение для обработки определенных типов данных (например, чтобы открыть определенную страницу в браузере, достаточно послать широковещательный интент со ссылкой на страницу, и на него откликнутся все приложения, способные отображать веб-страницы, либо только дефолтовый браузер) или просто запустить компонент того или иного приложения. Например, приложения в Android запускаются не напрямую, а с помощью интентов.

К сожалению, как и службы, интенты стали проблемой для Google и пользователей Android. Дело в том, что широковещательные интенты, используемые для уведомления приложений о событиях, приходят сразу ко всем приложениям, которые заявили, что способны на них реагировать. А чтобы приложение смогло среагировать на интент, его надо запустить. Картина получается такая: на смартфоне есть двадцать приложений, которые могут реагировать на интент android.net.conn.CONNECTIVITY_CHANGE, и при каждом подключении к сети и отключении от нее система запускает эти приложения, чтобы они смогли среагировать на интент. Как это сказывается на энергопотреблении - представьте сами.

Google исправила это недоразумение опять же в Android 8.0. Теперь приложения могут регистрировать обработчики широковещательных интентов только во время своей работы (за небольшими исключениями).

Сервисы Google

Google любит бравировать тем, что Android - операционная система с открытым исходным кодом. Это, конечно же, не совсем так. С одной стороны, код Android действительно открыт, и именно поэтому мы имеем доступ к такому количеству разнообразных кастомных прошивок. С другой стороны, собрав Android из официальных исходников, вы получите систему без нескольких важных компонентов: 1) отдельных драйверов, исходники которых производитель прячет, как коммерческую тайну, 2) сервисов Google, которые нужны в первую очередь для получения доступа к аккаунту, запуска Google Play и облачного бэкапа.

Сервисы Google (Google Mobile Services) также отвечают за многие другие вещи, включая поддержку push-уведомлений, Instant Apps, Google Maps, доступ к календарю, определение местоположения по сотовым вышкам и Wi-Fi-роутерам, механизм Smart Lock, позволяющий разблокировать устройство в зависимости от некоторых условий.

В современных версиях Android сервисы Google взяли на себя настолько большую часть работы, что жить без них оказывается хоть и возможно, но очень проблематично. А с ними тоже невесело: минимальный вариант пакета GApps (который содержит только сервисы Google и Google Play) весит больше 120 Мбайт, а сами сервисы славятся своей любовью к оперативке и заряду батареи. А еще они закрыты, то есть о том, что они могут делать, знает только сама Google.


Скачать пакет с сервисами и приложениями Google для кастомной прошивки можно с сайта opengapps.org (слово open не означает, что они открыты)

Именно поэтому на свет появился проект microG, задача которого - воссоздать самую важную функциональность сервисов Google в открытом коде. Уже сейчас microG позволяет получить доступ к своему аккаунту, активировать push-уведомления, доступ к картам Google и определению местоположения по сотовым вышкам. И все это при размере в четыре мега и почти полном отсутствии требований к оперативке и ресурсу батареи.

У проекта есть собственная сборка прошивки LineageOS, которая из коробки включает в себя microG и все необходимые для его работы модификации.

Ядро Linux и рантайм

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


Слоеный пирог Android

Наличие ядра Linux, а также частично совместимой со стандартом POSIX среды исполнения (в первую очередь это библиотека bionic, основанная на реализации стандартной библиотеки языка С из OpenBSD) делает Android совместимым с приложениями для Linux. Например, система аутентификации wpa_supplicant, применяемая для подключения к Wi-Fi-сетям, здесь точно такая же, как в любом дистрибутиве Linux. В ранних версиях Android использовался стандартный bluetooth-стек Linux под названием bluez (позже его заменили реализацией от Qualcomm под названием Bluedroid). Здесь даже есть своя консоль с набором стандартных UNIX/Linux-команд, реализованных в наборе Toybox, изначально созданном для встраиваемых Linux-систем.

Большинство консольных приложений, написанных для Linux, можно портировать в Android простой перекомпиляцией с помощью кросс-компилятора (главное - использовать статическую компиляцию, чтобы не получить конфликт библиотек), а имея права root, на Android-девайсе можно без всяких проблем запустить полноценный . Один нюанс - доступ к нему можно будет получить либо только через консоль, либо используя VNC-соединение. Также существует проект Maru OS, позволяющий использовать смартфон в качестве ПК на базе Debian при подключении к монитору. Ту же функцию обещает при подключении своих смартфонов к монитору с помощью дока DeX.


Старый добрый mc, запущенный в Android

Начиная с версии 4.4 Android умеет использовать систему принудительного контроля доступа SELinux для защиты от взлома и получения прав root. SELinux разработана Агентством национальной безопасности США и, если не вдаваться в детали, позволяет ограничить приложения (в том числе системные низкоуровневые компоненты) в возможностях. И речь вовсе не о полномочиях, которые юзер предоставляет приложениям, а о таких вещах, как системные вызовы и доступ к тем или иным файлам, невзирая на стандартные права доступа UNIX.

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

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

Сегодня SELinux используется для защиты почти всех системных компонентов Android. И это стало причиной резкого снижения количества найденных багов в Android. Но привело к фокусировке взломщиков на ядре, а точнее тех самых закрытых драйверах, аудит кода которых никто не проводил и безопасность которых не гарантирована (а она, как оказалось, находится в плачевном состоянии).

(6 оценок, среднее: 5,00 из 5)