Внутренние варианты iOS и для чего они используются

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

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

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

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

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

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

LLDiags — что Apple использует для низкоуровневой диагностики

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

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

iPhone 8 с Diags — принтскрин YouTube из видео AppleDemo

Когда устройство не находится в Diags, устройства под управлением версии iOS LLDiags обычно загружаются сразу в режим восстановления и не отображают ничего, кроме логотипа режима восстановления. Файловая система часто содержит минимум, достаточный для загрузки устройства, но не более того.

Говорят, что инженеры Apple взаимодействуют с этими устройствами через интерфейс командной строки через подключенный компьютер.

NonUI — что используют инженеры по аппаратному обеспечению и калибровочные машины Apple

Вариант iOS без пользовательского интерфейса был создан как средство разделения работы, выполняемой командами разработчиков программного и аппаратного обеспечения Apple.

Команда разработчиков программного обеспечения (SWE) работала над тем, что в конечном итоге стало версией iOS с пользовательским интерфейсом, который увидит потребитель. Аппаратной команде дали кое-что еще.

Командам разработчиков аппаратного обеспечения Apple (HWTE) не было предоставлено доступа к обычному пользовательскому интерфейсу. Вместо этого они полагались на импровизированную версию операционной системы iPhone с элементарным пользовательским интерфейсом, предназначенную только для тестирования аппаратных компонентов, таких как кнопки, порты, камеры, динамики и датчики.

Следующие два ранних iPhone служат прекрасной иллюстрацией различий между вариантами iOS с InternalUI и NonUI.

Два прототипа оригинального iPhone «Жёлудь» иллюстрируют разницу между InternalUI и NonUI.

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

Эти ранние прототипы работали под управлением операционной системы, известной как AcornOS, и коллекционеры обычно называют их «прототипами желудей».

По мере развития iPhone развивался и вариант его операционной системы NonUI. Более поздние прототипы оригинального iPhone имели версию операционной системы с, возможно, неуместным названием «SkankPhone».

В ранних версиях раздела «О программе» SkankPhone в качестве названия операционной системы указывалось «OS X», а не «iPhoneOS». Это прекрасно демонстрирует разделение между командами Apple по аппаратному и программному обеспечению.

Внутренние операционные системы компании полны различных шуток, сырых рисунков и мемов. Некоторые версии даже содержат отсылки к поп-культуре, например, внутренние версии watchOS содержат отсылки к персонажам из сериала «Симпсоны».

Например, приложение SkankPhone будет отображать различные сообщения в нижней части экрана. Некоторые из них включают: «Skank — новый черный» и «Передайте привет Newton MessagePad 3000».

iPhone под управлением SkunkPhone – YouTube Printscreen от Майкла MJD

Позже приложение превратилось в SwitchBoard, элементарную программу запуска для приложений и сред NonUI, таких как BurnIn. SwitchBoard существует и функционирует независимо, без необходимости использования SpringBoard или UIkit, которые используются для отображения стандартного пользовательского интерфейса iOS в других вариантах iOS.

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

Внутренние операционные системы без пользовательского интерфейса также часто отражают изменения, которые затрагивают ориентированную на потребителя версию iOS, известную в Apple как «Релизная версия» iOS. В этом отношении версии NonUI после iOS 7.0 в некоторых областях выглядят плоско.

Что касается конкретных функций, сборки iOS без пользовательского интерфейса часто содержат кэш ядра разработки, iBoot разработки и поддерживают несколько конфигураций оборудования. Этот тип iOS также может содержать ссылки на неизданные или списанные устройства, такие как iPhone N89 или iPad J98/J99.

За прошедшие годы Apple создала специальные варианты NonUI iOS для использования на производственных линиях или машинах для калибровки компонентов, таких как машина Horizon. Все эти версии ОС по-прежнему относятся к категории NonUI, которая до сих пор используется внутри Apple и на заводах.

Внутренний пользовательский интерфейс: что используют инженеры-программисты Apple

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

Это означает, что версии iOS с InternalUI могут содержать реализации невыпущенных функций, неанонсированные продукты, экспериментальные тестовые среды или альтернативные варианты дизайна, разработанные Apple.

Альтернативный режим многозадачности можно увидеть во внутренней версии iOS 4, изображения которой были размещены на вьетнамском веб-сайте в 2011 году.

Представление многозадачности в iOS 4 могло быть совсем другим

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

Примечательно, что сборки внутреннего пользовательского интерфейса iOS содержат встроенные параметры отчетов об ошибках, которые обрабатываются через приложение Radar. Чтобы сообщить об ошибке, сотрудник Apple «зарегистрировал радар».

Вариант iOS с InternalUI обычно содержит поддержку iPhone, предназначенных как для производства, так и для разработки, а также в некоторых случаях поддержку плат для разработки и FPGA. Сборки InternalUI также содержат отладочные версии iBoot.

Версии внутреннего пользовательского интерфейса iOS также существуют в отдельном варианте под названием «Desense», который часто имеет множество одинаковых внутренних приложений и настроек, хотя содержимое iOS этого типа может сильно различаться.

Время от времени внутренняя сборка iOS становится доступной широкой публике или сообществам коллекционеров и энтузиастов.

В начале 2020 года внутренняя версия iOS 14 из разрабатываемого iPhone 11 стала известна нескольким людям и в конечном итоге попала в прессу. Версия содержала ссылки на AppClips, коллекции обоев и виджеты.

Хотя AppClips и Widgets дебютировали позднее в 2020 году с iOS 14, функция «Коллекции обоев» была представлена ​​только в iOS 16 два года спустя. Это служит показателем того, насколько осторожно Apple относится к контролю качества.

VendorUI — что используется на заводах для тестирования

Хотя и InternalUI, и вариант iOS для конечного потребителя полностью используют стандартный пользовательский интерфейс iOS, этого нельзя сказать о VendorUI.

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

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

В марте 2024 года заслуживающий доверия частный аккаунт на X заявил, что Apple начала распространять внутренние сборки версии iOS 18 VendorUI.

CarrierOS: что нужно операторам связи для проверки функциональности

CarrierOS — это вариант iOS, который часто почти идентичен версиям iOS, которые Apple делает доступными для широкой публики.

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

Операционная система содержит такие приложения, как «E911Tester», которое используется для тестирования системы экстренного вызова E-911 на iPhone.

Релиз iOS – что получит конечный потребитель

Это версия iOS, которую используют почти все, у кого есть iPhone. Если вы не инженер Apple, вы, скорее всего, видели только стандартные версии iOS, которые Apple внутри компании называет «выпуском».

Бета-версии для разработчиков, общедоступные бета-версии и стандартные файлы .ipsw относятся к категории «Выпуски», поскольку они не содержат каких-либо внутренних инструментов или приложений.

Интересно, что внутренние дистрибутивы Release iOS тоже существуют. Эти дистрибутивы имеют ту же файловую систему, что и общедоступные версии iOS, с добавлением в некоторых случаях разработки iBoot.

Что все это значит?

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

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

Recent Posts

PSA: Вы можете получить от Apple до 349 долларов, если у вас есть iPhone 7

Если у вас был iPhone 7 или iPhone 7 Plus, у которого возникли проблемы со…

В Pencil Pro добавлено немного магии Apple UI

Apple Pencil Pro теперь поступает в руки пользователей со вчерашнего запуска, и вместе с ним…

Производство дисплеев iPhone 16 начнется по графику в июне

Дисплеи iPhone 16, вероятно, начнут производиться с июня. Поставщики Apple готовятся начать производство дисплеев для…

40% пользователей iPad держат свое устройство 3 и более лет, а вы? [Poll]

Мы только что увидели новое исследование CIRP, в котором говорится, что растущая группа владельцев iPad…

От iPhone вас тошнит в машине? iOS 18 намерена это исправить

До WWDC осталось еще несколько недель, но Apple уже заранее анонсировала некоторые инновационные функции, которые…

Лучшие приложения для просмотра любого видео на iPad

Три лучших видеоприложения для iPad «Из коробки» iPad будет воспроизводить многие типы видео, но далеко…