Самая свежая версия ios. Система iOS — что это такое? Не универсальная система

  • 26.04.2019

Что такое iOS в айфоне? Довольно странный вопрос для поклонника продукции Apple, но всё же стоит уделить этому внимание. Ведь на деле без этой штуки Айфон даже не станет включаться, потому что она является его операционной системой. А почему именно iOS – разве нельзя установить что-то другое, как, например, на ПК?

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

iOS – операционная система, созданная для смартфонов, планшетов и прочей техники, произведённой компанией Apple. Работает только на устройствах от этого американского бренда.

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

Немного истории

Лавры за появление сенсорного телефона (смартфона) можно смело отдать главе Apple Стиву Джобсу. Стоит задуматься, ведь после 2005 года прошло чуть более 10 лет, а насколько эти технологии шагнули далеко вперёд. А именно тогда Стив Джобс, которого уже ныне нет, придумал новую технологию для компьютеров, использование которой не требовало клавиатуры и мыши. Чуть позже он решил реализовать это в телефонах.

И, между прочим, первая модель Motorola ROKR успеха не имела, но чуть позже на рынок пришел теперь всем известный iPhone. В то время это назвали изобретением года. Тогда iOS для айфона назывался просто – OS X. Теперь это отнюдь небезызвестное программное обеспечение.

Кто-то скажет что Android (основной конкурент) гораздо популярнее. Это объясняется двумя причинами:

  1. Он более открыт и легче настраивается.
  2. Его разрешают ставить на любое устройство, а Apple ни с кем своими наработками не делится.

Хронология последних версий

Здесь не будут рассматриваться все версии – достаточно последних пяти:

1 iOS 6 – представлена в 2012 году. Претерпела более 200 изменений. Появились два новых стандартных приложения: картографический сервис и Passbook, позволяющий хранить банковские карты. 2 iOS 7 – вышла в 2013 году. Интерфейс впервые претерпел столь значительные изменения со времени появления iPhone. Модификация коснулась пункта управления, браузера Safari, приложений AirDrop, Siri, CarPlay и магазина AppStore. 3 iOS 8 – презентована в 2014 году. Из интересных приложений стоит отметить: HealthKit, Quicktype, Family Sharing. Также реформы коснулись работы с фото, сообщениями и виджетами и прочими функциями. 4 iOS 9 – представлена в 2015 году. Доработаны карты, Apple Pay, Siri и т.д. Также появилась возможность усложнить пароль для входа, улучшена функция энергосбережения, внедрена мультиоконность и поиск по настройкам. 5 iOS 10 – доступна с 2016 года. Значительно модифицированы приложения Messages и Siri, а также изменён дизайн Карт, Фото, Музыки и Новостей.

Преимущества iOS

Система работает достаточно быстро и не тормозит, хотя исключения бывают. В частности, когда свежую версию ставят на устаревший девайс. В этом случае загрузка системы может происходить более медленно или вовсе не происходить – хотя в идеале на новых моделях всё в порядке. Если привести более конкретный пример: на iPhone 5s не стоит ставить последнюю iOS 10 – после этого он начнёт явно притормаживать.

Сам интерфейс довольно красив и удобен. Хотя дизайн нравится далеко не всем и некоторыми считается излишне пёстрым и примитивным.

Много приложений созданных именно для неё – AppStore, буквально ломится от них, хотя действительно хорошие вещи стоят денег. Но недорогих и бесплатных тоже хватает.

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

Девелоперы делают особенный акцент на защищённости системы, но это часто создаёт определённые неудобства. Скорее всего, наиболее она защищена от пиратского контента, но и это не проблема.

Недостатки iOS

Не всё гладко, и прежде чем выбрать аппарат от Apple – лучше внимательно ознакомиться со всеми недостатками:

Весь контент нужно официально покупать в AppStore. Нет, конечно, можно взломать систему, но после этого смартфон лишается гарантийного ремонта. Посредством блютуза и флэшки проблема не решается. Флэшка на айфонах не предусмотрена, а блютуз видит только товарищей из соседнего apple-клуба. Поэтому всё придётся скачивать отдельно, а потом закачивать через iTunes.

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

iOS 10

Что напрягает в последней версии:

  • Сделанное фото тут же отправляется в облачное хранилище и удаляется с телефона. Потом, чтобы просмотреть его, потребуется время;
  • Приложение iMessage регулярно требует активации. А для этого необходимо отправлять платное SMS;
  • Нельзя вот так просто взять и переключиться с типа связи 3G на LTE. Нет такого рычага в iOS;
  • Нельзя в один клик отключить все приложения;
  • Курс доллара к рублю в AppStore выше реального. Но Apple как то невдомёк….

Заключение

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

Солидному бизнесмену нужно качество и надёжность – его не интересуют цены в AppStore. А студенту потребуется море музыки и видео, а главное, возможность обмениваться ей с друзьями. Вероятно, ему iOS не столь понравиться. Поэтому прежде чем покупать девайс с этой системой – необходимо определиться чего именно ожидаешь от его использования и для чего он конкретно нужен.

Какие возможности появились у пользователей iPad и iPhone?

По давно заведенной традиции, вместе с выпуском новых поколений смартфонов iPhone компания Apple выпускает и новую версию операционной системы iOS. Очередная — 11-я — iOS стала, пожалуй, самым крупным обновлением внешнего вида операционной системы с момента отказа от скевоморфизма в iOS 7. Но помимо визуальных новшеств здесь есть немало интересного и с точки зрения функциональности. Давайте познакомимся с iOS 11 и оценим основные нововведения!

Прежде всего, стоит отметить, что самые важные новшества касаются именно планшетов, а не смартфонов. На это указывает и рекламный слоган: «Большой шаг для iPhone. Гигантский скачок для iPad». Но некоторые из новых возможностей доступны и там, и там. С них мы и начнем.

Приложение «Файлы»

Один из самых частых упреков в адрес iOS — отсутствие менеджера файлов. Apple упорно не дает возможность работать с файлами на устройстве так же, как мы работаем с ними на компьютере, то есть сортировать по папкам, переносить из одной папки в другую и т. п. На первый взгляд, новое приложение «Файлы», наделавшее после анонса iOS 11 столько шуму, меняет эту парадигму. Внешне это действительно файловый менеджер, явно перекликающийся по дизайну с Finder в macOS.

Мы видим, что файлам и папкам можно присваивать цветовые теги, как это сделано в macOS (правда, присваиваются они очень неудобно и неинтуитивно); мы видим, что файлами можно делиться, посылая их по мэйлу или передавая иными способами, типичными для iOS. Их можно даже перемещать в папки.

Но обратите внимание: здесь нет доступа к файлам в самом iPad — только в облачных сервисах! В данном случае подключены Dropbox и iCloud Drive, на сайте Apple мы можем увидеть в скриншотах Box, Microsoft OneDrive, Google Drive... Правда, там же есть On My iPad, но найти этот пункт на нашем планшете нам не удалось. Возможно, это появится в финальной версии iOS 11, но пока приложение «Файлы» представляет собой, скорее, единый хаб для управления содержимым облачных сервисов.

Отметим, что все сказанное справедливо и для iPhone. И в iPhone, и в iPad у вас после обновления автоматически появляется среди приложений иконка «Файлы».

Пункт управления

Существенно изменился Пункт управления — полупрозрачный экран, открываемый жестом снизу экрана. Теперь вы можете изменить набор виджетов и их расположение. Все это делается через Настройки / Пункт управления.

В случае с iPad это менее полезно, а вот для iPhone такая возможность — настоящая находка. На скриншотах ниже видно, что были добавлены иконки диктофона и заметок, но убран таймер.

Из других полезных новшеств, доступных и на iPhone, и на iPad — лента уведомлений, доступная прямо с экрана блокировки. А только на iPhone — новый автомобильный режим. Когда смартфон в этом режиме, уведомления не поступают, а при попытке связаться с абонентом приходит сообщение о том, что человек за рулем.

Интересно, что этот режим можно активировать как вручную, так и автоматически — если смартфон определит, что человек находится в движении. Правда, в таком случае он будет включаться и в автобусе, например, или в такси. Так что есть третий, оптимальный вариант: автоматическая активация при подключении к Bluetooth автомобиля.

Обновленный интерфейс App Store

Одно из самых спорных нововведений — интерфейс магазина приложений App Store. Apple его радикально переделала (как для iPhone, так и для iPad), и, честно говоря, мы не можем сказать, что стало лучше. Он получился менее информативным (с точки зрения количества информации на единицу площади экрана) и более крикливым.

В новом App Store акцент смещен именно на выбор редакторов магазина. На первом плане — крупные карточки, каждая из которых посвящена одному приложению. Понятно, что с точки зрения удобства пользователя это сомнительное нововведение.

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

Стикеры из приложений в «Сообщениях»

Еще из интересного и потенциально полезного, однако далеко не столь необходимого, как это представляется — появление в «Сообщениях» удобного доступа к стикерам из сторонних приложений.

Теперь внизу окна «Сообщений» есть панель с иконками приложений, в которых доступны стикеры. Причем вы можете как установить какие-то наборы в App Store, и они станут доступны здесь, так и воспользоваться теми стикерами, что есть в уже установленных ранее приложениях.

В частности, на скриншотах видно, что стикеры есть у Lara Croft 2, Solar Walk 2 и даже приложения для ценителей живописи Artsy. Это значит, что диапазон стикеров и удобство их использования существенно возрастают. Но... часто ли мы пользуется именно «Сообщениями»? В нашем случае общение обычно происходит в Telegram, Viber, Whatsapp и даже Facebook Messenger, а не в «Сообщениях». Туда мы обращаемся, как правило, для написания SMS, но именно в случае с SMS стикеры не будут работать.

Новый интерфейс iPad

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

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

Если выполнить то же действие, находясь на главном экране, а не в приложении, то мы увидим миниатюры открытых окон, наподобие маковского Spaces.

Помимо этого, в iOS 11 для iPad компания Apple расширяет возможности многозадачности. В режиме Split View дополнительное приложение можно открыть прямо из дока, и оно появится на одном экране вместе с ранее открытым.

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

Прочие полезные изменения

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

Во-первых, сама опция запрятана глубоко. Надо создать новую заметку, найти плюсик в нижнем правом углу, нажать на него и выбрать пункт «Отсканировать документы».

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

Казалось бы, почему программа не может понять, что пятно внизу — это явно что-то лишнее? Не может быть на документах такого! Но — увы. Впрочем, это определенно движение в правильном направлении, так что будем надеяться, что в обновлениях iOS ситуация улучшится.

В дополнение к вышесказанному стоит описать новые возможности работы со стилусом Apple Pencil (понятно, что это касается только iPad Pro).

Теперь можно рисовать в заметках и письмах, причем текст будет автоматически «обтекать» рисунок. Кроме того, создавать рукописную заметку можно прямо на экране блокировки (она будет сохранена в «Заметках»). Плюс ко всему, улучшена работа со стилусом в PDF-документах и скриншотах — рисовать можно в любой момент, и изменения будут автоматически сохранены.

Выводы

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

Другое дело, что ощущения каких-то принципиально новых открывшихся возможностей после обновления до iOS 11 у нас нет. Пожалуй, удобна лента уведомлений на экране блокировки и возможность кастомизации Пункта управлений. В остальном — вроде все и неплохо, но если попользоваться iOS 11, а потом вернуться на iOS 10, ощущения дискомфорта нет.

Так, например, расширение возможностей работы со стилусом — направление совершенно верное, но много ли пользователей постоянно таскают Apple Pencil с собой? Да, наверное, тем, кто действительно привык работать с Apple Pencil, новые функции понравятся, однако таких — меньшинство.

Появление «Файлов» — и вовсе сомнительно в том виде, в котором это реализовано сейчас. Полноценным менеджером файлов это не является. Строго говоря, это агрегатор облачных сервисов, не более. Раньше почти все то же самое можно было сделать просто с помощью отдельных приложений Dropbox, Google Drive и пр.

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

Что однозначно удобно и хорошо, так это кастомизированный Центр управления на iPhone и обновленный док в iPad. Впрочем, у вас может быть иное мнение и впечатление. Расскажите в комментариях, какое новшество iOS 11 вам понравилось больше всего!

iOS - операционная система корпорации Apple, устанавливаемая ею на мобильные телефоны Iphone 3-5, планшеты Ipad, а также на музыкальный плеер Ipod.
Чем мне нравится данная операционная система:

  1. Быстрота работы, интерфейс системы практически не тормозит
  2. Система достаточно быстро загружается
  3. Интерфейс достаточно красочен и понятен
  4. Система удаления программ удобна и позволяет удалить программы в 2 клика
  5. Можно купить любую программу. Каталог программ в AppStore огромен
  6. Достаточно хорошие обновления. Естественно в каждой новой версии есть определенные ошибки, однако с каждой новой версией система становится все удобнее и функциональнее

Ipa файл - файл программы для установки на iOS. Система имеет встроенный браузер Safari. Последняя версия ОС — iOS 10. Новая версия выходит раз в году.
AppStore - магазин программ для устройств на iOS. Самое большое количество программ для мобильных телефонов.
Цена программы в пределах от 0.99 доллара до нескольких тысяч долларов. Для покупки программ требуется привязка к аккаунту пользователя дебетовой карты Visa. После того, как вы привязали карту, с вас снимается доллар, чтобы проверить, все ли в порядка с вашей картой. 1 доллар блокируется на карте, однако через некоторое время он возвращается.

Как обновить iOS?

Для обновления на новую версию iOS есть iTunes.
Itunes - ключевая программа для пользователей i-девайсов. Через нее происходит активация устройства, закачка музыки, аудиокниг и т.д. Скачать ее можно с сайта Apple. Также данная программа позволяет скачивать и производить обновление устройств на iOS. Нужно подключить устройство и справа на странице программа высветит возможность обновления. Перед обновлением отключите все антивирусы и фаерволы.
Текущую версию iOS вашего устройства можно посмотреть через Настройки — Основные — Об устройстве — Версия
Список фич iOS меняется от версии к версии. Начиная с 5й версии появилась интеграция с iCloud или с облаком.
Как это работает? — все достаточно просто. У тех программ, у которых есть интеграция с iCloud при вводе данных на одном устройстве они автоматом появляются на другом устройстве.
Добавление новых фич ведется от версии к версии.

Недостатки системы Apple iOS

У системы компании Apple есть ряд существенных недостатков.

  1. Как таковой многозадачности нормальной нет — в фоне работают, музыка, радио, закачивание и скачивание. Да и то не во всех приложениях. Когда приложение сворачивается, оно работает некоторое время, а потом останавливается.
  2. Операционная система является закрытой. Нельзя посмотреть список файло операционной системы и использовать устройство как флешку. Это является одновременно и достоинством. iOS — самая защищенная система в мире.
  3. Дороговизна телефонов и планшетов на данной операционной системе.

Достоинства iOS

  1. Самый крупный магазин приложений с достаточно качественными приложениям
  2. Быстрота работы системы по сравнению с другими
  3. Хорошее качество телефонов и планшетов компании Apple
  4. Быстрая реакция на ошибки и отсутствие вирусов
  5. Красота интерфейса и графики.
  6. Постоянное обновление системы раз в год, в т.ч. и для старых устройств

Владельцы-новички "яблочной" продукции неизбежно сталкиваются с такой штукой, как iOs. Что это такое? Как пользоваться? В чем преимущества и недостатки? И можно ли чем-нибудь заменить? Есть ответы на эти простые вопросы об iOs.

Что это такое

Прежде всего это мобильная операционная система, созданная компанией Apple, специально для своих i-гаджетов: планшетов, телефонов, плееров. Отличительная черта данной "оси" заключается в ее закрытости. Между собой гаджеты под управлением этой операционной системы могут без проблем "общаться", а вот с другими системами - нет. Даже bluetooth не может передавать файлы на другие устройства. Операционная система iOs (что это такое, мы уже разобрались) своевременно обновляется, совершенствуется, отличаясь при этом весьма высокой производительностью.

История

В 2007 году компания Apple представила свой первый телефон - iPhone. Тогда еще речи о iOs (что это такое и для чего нужно, расскажем дальше) даже и не было. Первый "яблочный" телефон работал под управлением упрощенной версии Мас ОС - компьютерной операционной системы. Естественно, что недостатков у гаджета было предостаточно, однако это все равно был огромный прорыв в мобильной индустрии. В 2008 году компания выпустила усовершенствованный iPhone, в которым как раз и появилась iOs. Что это такое? Это уже была именно мобильная операционная система, которая все-таки мало похожа на современную. В ней были самые простейшие функции, но на тот момент это был еще больший прорыв.

Становление

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

Особенности

Как говорилось выше, самая главная особенность - закрытость iOs. Что это такое? Фото рабочего iPhone чуть выше, там показан стандартный рабочий стол гаджета. Так вот, закрытость системы проявляется в том, что пользователь не может настроить устройство полностью под себя. Главные настройки, функции и основной функционал остаются стандартным. Система использует закрытый код, который не позволяет что-либо менять. И это, между прочим, является еще и достоинством. Хотя бы потому, что безопасность гаджета остается на высоте. Особенно в сравнении с полностью открытой и уязвимой системой Android.

Преимущества

Самым главным достоинством системы является ее стабильность. Действительно, многозадачность (одновременное использование нескольких приложений) остается на высоте даже на стареньких моделях гаджетов. Не говоря о том, что у системы редко происходят какие-либо сбои, приводящие к выходу из строя устройства. Такого в iOs практически не бывает! Разработчики, выпуская новый "яблочный" гаджет, не просто "затачивают" под него новую версию операционной системы, но и старательно оптимизируют ее для работы с более старыми устройствами. А если учесть, что продукция Apple стоит весьма недешево, то это очень гуманный подход.

Примечательно, что, несмотря на закрытый программный код, система остается интуитивно простой. А главное - удобной! Ею действительно приятно пользоваться, поскольку она работает слаженно, быстро и без сбоев. Но не обходится и без недостатков, ведь не все может быть идеальным.

Несовершенства

Пожалуй, самым главным минусом системы является ее частое обновление, которое приводит к некоторым неприятным моментам. Так, гаджеты первых поколений просто не могут себе позволить работать под управлением обновленных и самых последних версий iOs. Слабое "железо" просто не осваивает столь быстрые и совершенные функции, настройки. А более старые версии операционной системы перестают получать поддержку компании. Что всегда приводит пользователей к проблеме выбора: менять старый гаджет (продать которые весьма проблематично) на новый или же терпеть все "глюки" и "лаги", наблюдая, как система медленно "умирает".

Выводы

Итак, что еще можно сказать о iOs? Что это такое? Linux - самая современная и стабильная из ныне существующих компьютерных операционных систем, имеет общее, схожее ядро с iOs. Что уже говорит о множестве преимуществ перед другими мобильными платформами. Однако пользователей "Андроида" все равно остается больше. Хотя бы потому, что гаджеты с этой операционной системой стоят дешевле. Владельцы же iOs уже редко меняют ее на более бюджетные и простые варианты. И даже ограниченный пользовательский функционал, закрытость и дороговизна не останавливают! Что выбрать для себя? Это уже решает каждый сам, но стоит помнить, что, согласно статистике, пользователи iOs используют свои гаджеты на все 200%, практически не сталкиваясь с такой проблемой, как сброс устройства до заводских настроек, рестарт, "глюки" и "лаги".

Все в курсе, что мобильные девайсы Apple работают под управлением iOS. Многие знают, что iOS представляет собой облегченную версию настольной Mac OS X. Некоторые догадываются, что в основе Mac OS X лежит POSIX-совместимая ОС Darwin, а те, кто всерьез интересуется IT, в курсе, что основа Darwin - это ядро XNU, появившееся на свет в результате слияния микроядра Mach и компонентов ядра FreeBSD. Однако все это голые факты, которые ничего не скажут нам о том, как же на самом деле работает iOS и в чем ее отличия от настольного собрата.

Mac OS X

Операционная система, установленная сегодня на все маки и (в измененном виде) на айдевайсы, ведет свою историю аж с 1988 года, который в мире IT известен также тем, что стал годом выпуска первой бета-версии операционной системы NeXTSTEP. Сама NeXTSTEP была детищем команды разработчиков Стива Джобса, который к тому времени уже покинул Apple и основал компанию NeXT, которая занялась разработкой компьютеров для образовательных нужд.

В момент своего появления на свет NeXTSTEP была поистине передовой операционной системой, которая включала в себя множество технологических новаций. В основе ОС лежало модифицированное микроядро Mach, дополненное компонентами ядра FreeBSD, включая эталонную реализацию сетевого стека. Более высокоуровневые компоненты NeXTSTEP были написаны с использованием языка Objective-C и предоставляли разработчикам приложений богатый объектно-ориентированный API. Система была снабжена развитым и весьма удобным графическим интерфейсом (ключевые компоненты которого сохранились в OS X и даже iOS) и мощной средой разработки, включавшей в себя в том числе известный всем современным разработчикам визуальный дизайнер интерфейса.

После провала NeXT и возвращения Стива Джобса в компанию Apple в 1997 году NeXTSTEP легла в основу проекта Rhapsody, в рамках которого началась разработка системы-наследника Mac OS 9. В 2000 году из Rhapsody был выделен открытый проект Darwin, исходники которого опубликованы под лицензией APSL, а уже в 2001 году появилась на свет OS X 10.0, построенная на его основе. Спустя несколько лет Darwin лег в основу операционной системы для готовящегося к выпуску смартфона, о котором до 2007-го, кроме слухов, не было известно почти ничего.

XNU и Darwin

Условно начинку OS X / iOS можно разделить на три логических уровня: ядро XNU, слой совместимости со стандартом POSIX (плюс различные системные демоны/сервисы) и слой NeXTSTEP, реализующий графический стек, фреймворк и API приложений. Darwin включает в себя первые два слоя и распространяется свободно, но только в версии для OS X. iOS-вариант, портированный на архитектуру ARM и включающий в себя некоторые доработки, полностью закрыт и распространяется только в составе прошивок для айдевайсов (судя по всему, это защита от портирования iOS на другие устройства).

По своей сути Darwin - это «голая» UNIX-подобная ОС, которая включает в себя POSIX API, шелл, набор команд и сервисов, минимально необходимых для работы системы в консольном режиме и запуска UNIX-софта. В этом плане он похож на базовую систему FreeBSD или минимальную установку какого-нибудь Arch Linux, которые позволяют запустить консольный UNIX-софт, но не имеют ни графической оболочки, ни всего необходимого для запуска серьезных графических приложений из сред GNOME или KDE.

Ключевой компонент Darwin - гибридное ядро XNU, основанное, как уже было сказано выше, на ядре Mach и компонентах ядра FreeBSD, таких как планировщик процессов, сетевой стек и виртуальная файловая система (слой VFS). В отличие от Mach и FreeBSD, ядро OS X использует собственный API драйверов, названный I/O Kit и позволяющий писать драйверы на C++, используя объектно-ориентированный подход, сильно упрощающий разработку.

iOS использует несколько измененную версию XNU, однако в силу того, что ядро iOS закрыто, сказать, что именно изменила Apple, затруднительно. Известно только, что оно собрано с другими опциями компилятора и модифицированным менеджером памяти, который учитывает небольшие объемы оперативки в мобильных устройствах. Во всем остальном это все то же XNU, которое можно найти в виде зашифрованного кеша (ядро + все драйверы/модули) в каталоге /System/Library/Caches/com.apple.kernelcaches/kernelcache на самом устройстве.

Уровнем выше ядра в Darwin располагается слой UNIX/BSD, включающий в себя набор стандартных библиотек языка си (libc, libmatch, libpthread и так далее), а также инструменты командной строки, набор шеллов (bash, tcsh и ksh) и демонов, таких как launchd и стандартный SSH-сервер. Последний, кстати, можно активировать путем правки файла /System/Library/LaunchDaemons/ssh.plist. Если, конечно, джейлбрейкнуть девайс.

На этом открытая часть ОС под названием Darwin заканчивается, и начинается слой фреймворков, которые как раз и образуют то, что мы привыкли считать OS X / iOS.

Фреймворки

Darwin реализует лишь базовую часть Mac OS / iOS, которая отвечает только за низкоуровневые функции (драйверы, запуск/остановка системы, управление сетью, изоляция приложений и так далее). Та часть системы, которая видна пользователю и приложениям, в его состав не входит и реализована в так называемых фреймворках - наборах библиотек и сервисов, которые отвечают в том числе за формирование графического окружения и высокоуровневый API для сторонних и стоковых приложений

INFO

Как и во многих других ОС, API Mac OS и iOS разделен на публичный и приватный. Сторонним приложениям доступен исключительно публичный и сильно урезанный API, однако jailbreak-приложения могут использовать и приватный.

В стандартной поставке Mac OS и iOS можно найти десятки различных фреймворков, которые отвечают за доступ к самым разным функциям ОС - от реализации адресной книги (фреймворк AddressBook) до библиотеки OpenGL (GLKit). Набор базовых фреймворков для разработки графических приложений объединен в так называемый Cocoa API, своего рода метафреймворк, позволяющий получить доступ к основным возможностям ОС. В iOS он носит имя Cocoa Touch и отличается от настольной версии ориентацией на сенсорные дисплеи.

Далеко не все фреймворки доступны в обеих ОС. Многие из них специфичны только для iOS. В качестве примеров можно привести AssetsLibrary, который отвечает за работу с фотографиями и видео, CoreBlueTooth, позволяющий получить доступ к синезубу, или iAd, предназначенный для вывода рекламных объявлений в приложениях. Другие фреймворки существуют только в настольной версии системы, однако время от времени Apple переносит те или иные части iOS в Mac OS или обратно, как, например, случилось с фреймворком CoreMedia, который изначально был доступен только в iOS.

Все стандартные системные фреймворки можно найти в системном каталоге /System/Library/Frameworks/. Каждый из них находится в своем собственном каталоге, называемом бандлом (boundle), который включает в себя ресурсы (изображения и описание элементов интерфейса), хидеры языка си, описывающие API, а также динамически загружаемую библиотеку (в формате dylib) с реализацией фреймворка.

Одна из интересных особенностей фреймворков - их версионность. Один фреймворк может иметь сразу несколько разных версий, поэтому приложение, разработанное для устаревших версий системы, будет продолжать работать, даже несмотря на изменения, внесенные в новые версии ОС. Именно так реализован механизм запуска старых iOS-приложений в iOS 7 и выше. Приложение, разработанное для iOS 6, будет выглядеть и работать именно так, как если бы оно было запущено в iOS 6.

SpringBoard

Уровнем выше находятся приложения, системные и устанавливаемые из магазина приложений. Центральное место среди них занимает, конечно же, SpringBoard (только в iOS), реализующее домашний экран (рабочий стол). Именно оно запускается первым после старта системных демонов, загрузки в память фреймворков и старта дисплейного сервера (он же менеджер композитинга, он же Quartz Compositor), отвечающего за вывод изображения на экран.

SpringBoard - это связующее звено между операционной системой и ее пользователем, графический интерфейс, позволяющий запускать приложения, переключаться между ними, просматривать уведомления и управлять некоторыми настройками системы (начиная с iOS 7). Но также это и обработчик событий, таких как касание экрана или переворот устройства. В отличие от Mac OS X, которая использует различные приложения и демоны-агенты для реализации компонентов интерфейса (Finder, Dashboard, LaunchPad и другие), в iOS почти все базовые возможности интерфейса пользователя, в том числе экран блокировки и «шторка», заключены в одном SpringBoard.

В отличие от других стоковых приложений iOS, которые располагаются в каталоге /Applications, SpringBoard наравне с дисплейным сервером считается частью фреймворков и располагается в каталоге /System/Library/CoreServices/. Для выполнения многих задач он использует плагины, которые лежат в /System/Library/SpringBoardPlugins/. Кроме всего прочего, там можно найти, например, NowPlayingArtLockScreen.lockboundle, отвечающий за отображение информации о проигрываемой композиции на экране блокировки, или IncomingCall.serviceboundle, ответственный за обработку входящего звонка.

Начиная с iOS 6 SpringBoard разделен на две части: сам рабочий стол и сервис BackBoard, ответственный за коммуникации с низкоуровневой частью ОС, работающей с оборудованием (уровень HAL). BackBoard отвечает за обработку таких событий, как касания экрана, нажатия клавиш, получение показания акселерометра, датчика положения и датчика освещенности, а также управляет запуском, приостановкой и завершением приложений.

SpringBoard и BackBoard имеют настолько большое значение для iOS, что, если каким-либо образом их остановить, вся система застынет на месте и даже запущенное в данный момент приложение не будет реагировать на касания экрана. Это отличает их от домашнего экрана Android, который является всего лишь стандартным приложением, которое можно остановить, заменить или вообще удалить из системы (в этом случае на экране останутся вполне рабочие кнопки навигации и строка состояния со «шторкой»).

Приложения

На самой вершине этой пирамиды находятся приложения. iOS различает встроенные (стоковые) высоко привилегированные приложения и сторонние, устанавливаемые из iTunes. И те и другие хранятся в системе в виде бандлов, во многом похожих на те, что используются для фреймворков. Разница заключается лишь в том, что бандл приложения включает в себя несколько иную метаинформацию, а место динамической библиотеки занимает исполняемый файл в формате Mach-O.

Стандартный каталог хранения стоковых приложений - /Applications/. В iOS он абсолютно статичный и изменяется только во время обновлений системы; пользователь получить к нему доступ не может. Сторонние приложения, устанавливаемые из iTunes, напротив, хранятся в домашнем каталоге пользователя /var/mobile/Applications/ внутри подкаталогов, имеющих вид 4-2-2-2-4, где два и четыре - это шестнадцатеричные числа. Это так называемый GUID - уникальный идентификатор, который однозначно идентифицирует приложение в системе и нужен в том числе для создания изолированной песочницы (sandbox).

Sandbox

В iOS песочницы используются для изолирования сервисов и приложений от системы и друг от друга. Каждое стороннее приложение и большинство системных работают в песочнице. С технической точки зрения песочница представляет собой классический для мира UNIX chroot, усиленный системой принудительного контроля доступа TrustedBSD MAC (модуль ядра sandbox.kext), которая отрезает приложениям не только доступ к файлам за пределами домашнего каталога, но и прямой доступ к железу и многим системным функциям ОС.

В целом заключенное в sandbox приложение ограничено в следующих возможностях:

  • Доступ к файловой системе за исключением своего собственного каталога и домашнего каталога пользователя.
  • Доступ к каталогам Media и Library внутри домашнего каталога за исключением Media/DCIM/, Media/Photos/, Library/AddressBook/, Library/Keyboard/ и Library/Preferences/.
  • Доступ к информации о других процессах (приложение «считает» себя единственным в системе).
  • Прямой доступ к железу (разрешено использовать только Cocoa API и другие фреймворки).

Все эти ограничения соответствуют sandbox-профилю (набору ограничивающих правил) container и применяются к любому стороннему приложению. Для стоковых приложений, в свою очередь, могут применяться другие ограничения, более мягкие или жесткие. В качестве примера можно привести почтовый клиент (профиль MobileMail), который в целом имеет такие же серьезные ограничения, как и сторонние приложения, но может получить доступ ко всему содержимому каталога Library/. Обратная ситуация - SpringBoard, вообще не имеющий ограничений.

Внутри песочниц работают многие системные демоны, включая, например, AFC, предназначенный для работы с файловой системой устройства с ПК, но ограничивающий «область видимости» только домашним каталогом пользователя. Все доступные системные sandbox-профили располагаются в каталоге /System/Library/Sandbox/Profiles/* и представляют собой наборы правил, написанных на языке Scheme. Кроме этого, приложения также могут включать в себя дополнительные наборы правил, называемых entitlement. По сути, это все те же профили, но вшитые прямо в бинарный файл приложения (своего рода самоограничение). Просмотреть эти правила можно, например, так:
# cat -tv /Applications/MobileSafari.app/MobileSafari | tail -31 | more
Смысл существования всех этих ограничений двойной. Первая (и главная) задача, которую решает sandbox, - это защита от вредоносных приложений. Вкупе с тщательной проверкой опубликованных в iTunes приложений и запретом на запуск не подписанных цифровым ключом приложений (читай: любых, полученных не из iTunes) такой подход дает прекрасный результат и позволяет iOS находиться на вершине в списке самых защищенных от вирусов ОС.

Вторая проблема - это защита системы от самой себя и пользователя. Баги могут существовать как в стоковом софте от Apple, так и в головах юзеров. Sandbox защищает от обоих. Даже если злоумышленник найдет дыру в Safari и попытается ее эксплуатировать, он все равно останется в песочнице и не сможет навредить системе. А юзер не сможет «сломать свой любимый телефончик» и не напишет гневных отзывов в адрес Apple. К счастью, знающие люди всегда могут сделать jailbreak и обойти защиту sandbox (собственно, в этом и есть смысл джейлбрейка).

Многозадачность

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

Впервые такой API появился в iOS 4 (до этого фоновые задачи могли выполнять только стоковые приложения) и наращивался по мере развития операционной системы. Сегодня (речь идет об iOS 7) так называемый Background API позволяет делать следующее:

  • проигрывать аудио;
  • совершать VoIP-звонки;
  • получать информацию о смене местоположения;
  • получать push-уведомления;
  • планировать отложенный вывод уведомлений;
  • запрашивать дополнительное время для завершения работы после перехода в фоновый режим;
  • обмениваться данными с подключенными к девайсу аксессуарами (в том числе Bluetooth);
  • получать и отправлять данные по сети (начиная с iOS 7).

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

Выводы

Стоит сказать, что за время своего развития и последующего переезда в мобильные девайсы NeXTSTEP не только не растеряла все свои достоинства, но и приумножила их. Можно долго слушать россказни сотрудников Google, уверяющих, что Android разрабатывался без оглядки на iOS, но факт остается фактом: многие архитектурные решения Android позаимствовал именно у iOS. И не потому, что так было проще, а благодаря их красоте и эффективности.

Шесть стадий загрузки iOS

  1. Boot ROM . После включения устройства первым запускается минималистичный загрузчик, прошитый в постоянную память устройства. Его задача - произвести начальную инициализацию железа и передать управление первичному загрузчику LLB. Boot ROM всегда имеет заводскую прошивку и не может быть обновлен.
  1. Low Level Bootloader (LLB) . Далее управление получает LLB. Это первичный загрузчик, задача которого - найти в памяти устройства iBoot, проверить его целостность и передать ему управление либо переключить девайс в режим восстановления, если это не удалось. Код LLB хранится в NAND-памяти устройства и обновляется вместе с установкой новой версии прошивки. Кроме всего прочего, он выводит на экран загрузочный логотип.
  1. iBoot . Это вторичный и основной загрузчик айдевайсов. Он включает в себя драйвер файловой системы, с помощью которого получает доступ к содержимому NAND-памяти, находит ядро и передает ему управление. В iBoot также встроен драйвер UART, с помощью которого можно производить отладку ядра и ОС, подключив девайс к COM-порту или USB-порту компа (с помощью кабеля USB - UART).

4 Ядро . Здесь все как обычно. Ядро производит инициализацию оборудования, после чего передает управление демону launchd.

5 Launchd . Это первичный процесс iOS и Mac OS X, он подключает файловые системы, запускает демоны/службы (например, backupd, configd, locationd), дисплейный сервер, фреймворки, а на последнем этапе загрузки отдает управление SpringBoard. В iOS и Mac OS X launchd используется как замена стандартного /bin/init в UNIX, однако его функциональность гораздо шире.

6 SpringBoard . Вот и экран блокировки!

Первые четыре этапа в этой цепи образуют chain of trust, реализованный с помощью сверки цифровой подписи загружаемого компонента. Цифровую подпись имеют LLB, iBoot и ядро, что позволяет исключить внедрение в цепочку хакнутого загрузчика или ядра, которые могут быть использованы для загрузки сторонней операционной системы или джейлбрейка. Единственный способ обойти этот механизм - найти дыру в одном из загрузчиков и воспользоваться ею для обхода проверки. В свое время было найдено несколько таких дыр в Boot ROM (наиболее известен эксплойт limera1n от geohot, актуальный для iPhone 1–4), а в начале 2014 года и в iBoot (хакер iH8sn0w, эксплойт так и не был опубликован).

Удерживая кнопку «Домой» при включении iPhone, можно заставить iBoot загрузиться в так называемый режим восстановления (Recovery), который позволяет восстановить прошивку iOS или обновить ее, используя iTunes. Однако механизм автоматического OTA-обновления использует другой режим, именуемый DFU (Device Firmware Upgrade), который активируется на раннем этапе загрузки сразу после Boot ROM и реализован в двух компонентах: iBSS и iBEC. По сути, это аналоги LLB и iBoot, конечная цель которых - не загрузить ОС, а перевести смартфон в режим обновления.