Новая версия операционной системы для компьютеров Mac, Mountain Lion, больше не называется Mac OS X. Из её названия исчезло слово Mac, и осталось лишь OS X. Точно так же во время представления iPhone и Apple TV компания называла операционную систему, позже получившую название iOS. Теперь, когда стремление Apple как можно больше унифицировать «настольную» и «мобильную» ОС совершенно очевидно, есть все основания расценивать исчезновение слова Mac из названия OS X Mountain Lion как свидетельство скорого конца платформы в том виде, к которому мы привыкли за почти тридцать лет её существования. Ну, или её «преобразования до неузнаваемости» — чтобы не звучало так трагично. Так ли это?
![OS X 10.8 Mountain Lion](mountain-lion-dev-preview/ii/os-x-ml-without-mac.jpg)
Файлы — вне закона
В то время как многие апологеты ПК до сих пор вполне серьёзно обсуждают отсутствие совместимости новых платформ с «огромным парком приложений», Apple готовится к уничтожению в Mac гораздо более основополагающей особенности ПК — использования файлов как основных объектов. В прошлом году компания продала 156 млн устройств с iOS — больше, чем компьютеров Mac за все почти тридцать лет существования этой платформы. Apple просто не имеет права не учитывать чаяния пользователей, одобривших модель использования системы, в центре которой стоят не файлы, а приложения, каждое из которых работает с собственными документами. И если вначале такая модель казалась пригодной лишь для просмотра документов, то успех многих «креативных» приложений для iPad — например, GarageBand или Autodesk SketchBook Pro — свидетельствуют о жизнеспособности бесфайловой модели и при создании контента.
Сейчас представить Mac без Finder довольно сложно, однако на самом деле Apple уже давно подготовила пользователей к такой модели организации и хранения информации: типичный владелец Mac хранит свои фотоснимки в iPhoto, а музыку — в iTunes. Он не задумывается, где располагаются соответствующие файлы, а для доступа к ним использует библиотеки — базы данных, оптимизированные для данного вида контента. В настоящее время, когда ёмкость библиотек фотоснимков или музыкальных композиций исчисляется десятками тысяч объектов, характерный для ПК принцип хранения информации в древовидной структуре папок и файлов становится слишком громоздким. Благодаря использованию интегрированных библиотек и соответствующих приложений достигается гораздо большая эффективность, гибкость и функциональность хранения и управления контентом.
Песочница
Через несколько месяцев все приложения, распространяемые через Mac App Store, должны будут использовать сэндбоксинг. Сэндбоксинг (от англ. sandbox — «песочница») — технология обеспечения безопасности работы ПО за счёт ограничения доступа приложений к тем или иным ресурсам системы.
Благодаря механизму сэндбоксинга приложение, содержащее вредоносный код, но работающее внутри своей «песочницы», не сможет причинить вред другой информации, хранимой в ОЗУ и ПЗУ. При использовании механизма сэндбоксинга для приложений станут недоступны многие привычные операции. В качестве примера можно привести операцию удаления файла: в обычном режиме любое приложение имеет право удалить файлы, принадлежащие пользователю, который это приложение запустил. При работе в «песочнице» приложение имеет доступ лишь к своим собственным файлам и документам.
![Mac App Store — приложения в песочницах](mountain-lion-dev-preview/ii/mac-apps-sandboxing.png)
Механизм сэндбоксинга используется в iOS с момента появления системы. Первые шаги к тотальному сэндбоксингу на «настольной» платформе были сделаны ещё в Mac OS X Leopard, когда поддержка технологии была встроена в ядро системы. В Snow Leopard уже многие системные процессы работали в своих собственных «песочницах». Наконец, к выпуску Lion в Купертино решили, что технология сэндбоксинга Mac OS X достаточно отточена для применения в сторонних приложениях.
![Сэндбоксинг в Lion](mountain-lion-dev-preview/ii/sandboxing-lion.png)
Приложение, использующее сэндбоксинг, сообщает системе и пользователю о том, какие программные или аппаратные ресурсы оно будет использовать — например, принимать входящие сетевые подключения или захватывать изображения с помощью камеры.
Сейчас, когда большинство приложений по-прежнему используют в качестве документов файлы или папки, хранящиеся в файловой системе, полностью ограничить приложениям доступ к файлам невозможно, потому что в этом случае документы попросту нельзя будет открыть. С другой стороны, если выдать приложению разрешение на доступ к файлам за пределами его «песочницы», то это сразу же сделает всю систему сэндбоксинга неэффективной. В качестве решения этой дилеммы в Apple разрешили таким приложениям доступ к файловой системе с помощью системных вызовов диалоговых окон Open/Save: при работе с файлами открывается диалоговое окно, которое имеет права доступа к файловой системе, пользователь выбирает нужный файл, окно закрывается, и приложение вновь теряет права доступа к файловой системе, оставаясь запертым в своей «песочнице».
Первоначально Apple хотела сделать сэндбоксинг обязательным для всех приложений App Store ещё в ноябре прошлого года, однако недочёты, выявленные в системной поддержке этого механизма, заставили перенести введение этого требования сначала на 1 марта этого года, а позже — на 1 июня.
Сейчас в собственных «песочницах» работают механизмы прорисовки веб-страниц Safari, приложения Preview и TextEdit, кодеки QuickTime и другие процессы. Стоит отметить, что многие собственные приложения Apple — например, из состава пакетов iWork или iLife — сэндбоксинг всё ещё не используют. Некоторые сторонние разработчики высказывают опасения, что использование сэндбоксинга заставит исключить из их приложений некоторые функции и доставит пользователям дополнительные хлопоты. В качестве решения проблемы некоторые разработчики рассматривают возможность выпуска дополнительных модулей (helpers) к «урезанным» приложениям из Mac App Store, которые смогут восстанавливать запрещённую функциональность. Неизвестно, однако, как к этому отнесётся сама Apple.
В то же время разработчики отмечают, что Apple ведёт с ними постоянный диалог, прислушиваясь к их мнению относительно недостатков механизма сэндбоксинга. Для большинства приложений необходимость работы в пределах «песочницы» проблемой не станет, однако многие приложения, обменивающиеся информацией с другими приложениями, рискуют оказаться за бортом App Store. В качестве примеров таких продуктов можно привести Punto Switcher, Growl, программы проверки орфографии, утилиты для поиска дубликатов в библиотеке iPhoto и др. Разработчикам лишь остаётся надеяться, что Apple предложит им новые инструменты, которые позволят сохранить функциональность их приложений без нарушения новых политик.
Gatekeeper
Об этой новой функции OS X мы вкратце рассказали в обзорной статье о Mountain Lion. Gatekeeper — барьер, ограждающий систему от запуска нежелательных приложений путём контроля источников, из которых они получены. В настоящее время такие источники Apple разбивает на три группы: разработчики, представляющие свои продукты в Mac App Store; официально зарегистрированные разработчики Apple, самостоятельно распространяющие свои приложения с собственной электронной подписью; все остальные разработчики и приложения.
![Скриншот OS X 10.8 Mountain Lion](mountain-lion-dev-preview/23.jpg)
В настоящее время каждый официально зарегистрированный разработчик получает от Apple персональный сертификат, который позволяет подписывать приложения. Стоимость участия в этой программе, включающей, помимо прочего, возможность размещения приложений в Mac App Store, составляет 99 долларов в год.
Все приложения, распространяемые через Mac App Store, должны быть подписаны. Для остальных приложений, распространяемых другими путями, наличие цифровой подписи не является обязательным условием для запуска в Mountain Lion, однако разработчики сами заинтересованы в подписи, так как в будущем только такие приложения будут доступны для запуска обычным пользователям.
С точки зрения информационной безопасности, главное отличие подписанных приложений из Mac App Store и подписанных приложений из других источников состоит в том, что первые проходят обязательную проверку в Apple, поэтому являются потенциально более безопасными. Для приобретения сертификата зарегистрированного разработчика необходима лишь кредитная карта и 99 долларов, и для профессиональных злоумышленников эти условия не станут серьёзной помехой, поэтому приложения, распространяемые не через Mac App Store, потенциально опаснее: даже подписанные, они могут содержать вредоносный код.
Если Apple станет известно, что в подписанных приложениях того или иного разработчика содержится вредоносный код, эти приложения будут внесены в соответствующий список, содержащийся в OS X и обновляющийся раз в 24 часа, а сертификат разработчика будет блокирован. Тем не менее на нынешнем этапе реализации Gatekeeper подписанные приложения с вредоносным кодом могут быть запущены даже после того, как Apple внесёт соответствующие сертификаты в «чёрный список». В первой публичной предварительной версии OS X Mountain Lion механизм Gatekeeper гораздо менее жёсткий, чем его аналог в iOS. В мобильной операционной системе Apple подпись требуется всегда и для каждого приложения, в то время как Gatekeeper использует для отсеивания приложений модифицированный механизм File Quarantine, который присутствует в последних версиях Mac OS X со времён Leopard и предупреждает пользователей о потенциальной опасности приложений при первом запуске. Для определения таких приложений File Quarantine использует собственный флаг, который устанавливается при загрузке приложений с помощью Safari, Mail, Firefox и ряда других программ (подробный список — в /System/Library/CoreServices/CoreTypes.bundle/ Contents/Resources/Exceptions.plist). После первого запуска такого приложения пользователь подтверждает своё намерение, и File Quarantine этот флаг сбрасывает. Если теперь перенести это приложение на другой компьютер, например с помощью USB-накопителя или DVD, то оно может быть запущено без предупреждения. Вполне возможно, в будущих версиях OS X компания реализует более эффективный механизм проверки цифровой подписи приложений, аналогичный существующему в iOS. Такой подход позволит Apple запрещать запуск вредоносного ПО в любой момент, в то время как File Quarantine бессилен против приложений, у которых флаг предупреждения сброшен ранее — после получения согласия пользователя при первом запуске.
Принципиальное отличие механизма проверки приложений перед запуском в OS X и iOS может говорить о том, что в Купертино решили в перспективе всё же оставить подготовленным пользователям возможность запуска приложений без подписи. А может, со временем и перенести этот опыт в iOS? Нет, это, скорее, фантастика.
Вполне очевидно, Gatekeeper также является потенциальным инструментом Apple для «загона» приложений в Mac App Store. Пока в OS X Mountain Lion по умолчанию у Gatekeeper включен режим, разрешающий запуск приложений из Mac App Store и приложений с подписью, однако если в будущем в Купертино решат изменить установки по умолчанию на «Только из Mac App Store», то у разработчиков просто не останется выбора. В этом случае «обычный» пользователь, загрузив приложение не из Mac App Store, увидит перед собой пугающее предупреждение о потенциальной опасности запускаемого приложения, а такая перспектива разработчикам ПО вряд ли по душе. В Mac App Store же их будут ждать с распростёртыми объятиями и со всеми вытекающими — как с «пряниками» вроде поддержки Notification Center или iCloud, так и с неудобствами — комиссией в 30%, цензурой и др.
![Gatekeeper в действии](mountain-lion-dev-preview/ii/gatekeeper-lion.png)
В который раз отметим, что в своём большинстве разработчики считают, что соблюдение требований Apple выгодно для них, так как Mac App Store как генератор дохода уже в настоящее время вне конкуренции, а о будущем и говорить не приходится.
Будущее Mac
Ещё несколько лет назад названия Apple и Mac были практически синонимами. Плееры iPod, несмотря на огромную популярность и ежеквартальные многомиллионные продажи, не смогли сместить Mac с трона. Однако с появлением iPhone, iOS и iPad всё изменилось. В настоящее время для большинства пользователей продуктов компании название Apple прежде всего ассоциируется с мобильными устройствами, работающими под управлением iOS. Вряд ли стоит сомневаться в том, что и телевизор, который компания выпустит, по-видимому, уже в недалёком будущем, также будет, подобно приставке Apple TV, работать под управлением iOS. Значит ли это, что «настольная» OS X, а вместе с ней и платформа Mac уже сейчас рассматриваются Apple как тупиковая ветвь эволюции продуктов компании?
Ответ на этот вопрос дал сам Стив Джобс, чьи идеи будут планом действий Apple в ближайшие годы. Основатель компании назвал главным направлением деятельности Apple на ближайшее десятилетие не iPhone и не iPad, а онлайновый сервис iCloud, который призван предоставить пользователю набор возможностей, предоставлявшихся раньше локальными устройствами — будь то настольные компьютеры или смартфоны. Хранение данных, их организация, распространение, а в будущем и их обработка — вот основные задания iCloud. На момент начала работы iCloud являлся лишь дополнительной функцией для пользователей аппаратных продуктов компании, однако в скором будущем iCloud займёт центральное место, а аппаратные устройства, работающие под управлением iOS и OS X, станут клиентскими устройствами, а точнее — инструментами для работы с iCloud. Таким образом, в мире Post-PC, по версии Apple, iCloud как инструмент для хранения и обработки информации занимает место персонального компьютера, а локальные вычислительные устройства из центра персональной информационной среды смещаются в утилитарную сторону — к мышкам и мониторам. «The Network is the Computer» — помните? Сбывается!
![Gatekeeper в действии](mountain-lion-dev-preview/ii/icloud-is-computer.png)
Однако для того, чтобы iCloud стал по-настоящему универсальным и самодостаточным, функционально не уступая нынешним персональным компьютерам, клиентские устройства и ПО также должны развиваться. Устройства с тач-интерфейсом, предоставляя невиданные ранее возможности и гибкость, далеко не всегда могут заменить традиционные 20–30-дюймовые мониторы и мыши. Знакомство с нововведениями в Mountain Lion придаёт уверенность в том, что выбранный Apple вектор развития двух её операционных систем — их параллельное сосуществование с как можно более полной унификацией внутренних механизмов. Однако в Купертино уверены, что Mac и iPad не могут иметь универсальную операционную систему в силу различной специфики применения. В будущем OS X по-прежнему будет оставаться похожей на Mac OS X. Даже в том случае, если Apple решит перевести какие-то модели Mac на процессоры ARM. Такой подход существенно отличается от взглядов Microsoft, которая не только решила использовать и в персональных компьютерах, и в планшетах общие внутренние механизмы Windows 8, но и заменила привычную кнопку «Пуск» интерфейсом Metro, который, мягко говоря, не очень дружественен при работе без тачскрина.
В качестве лирического отступления заметим, что с каждой новой версией операционной системы Mac потенциальная смена процессорной архитектуры выглядит всё более безболезненной: в Mountain Lion Apple продолжает войну с legacy-технологиями, всеми силами подталкивая разработчиков к Cocoa и в App Store, а таким приложениям для работы на Mac с процессорами ARM в большинстве случаев достаточно будет перекомпиляции. Такой «транзишн» будет намного безболезненнее перевода Mac на процессоры Intel, осуществлённого в 2005–2006 годах.
Отсечение legacy-технологий, таких как Carbon, Java, Flash, вполне вписывается в стратегию Apple говорить «нет» случайностям и неопределённостям. Полный контроль, унификация и стандартизация, замена сторонних технологий собственными — всё это должно помочь компании поставить успех на конвейер. Mountain Lion станет первой версией OS X, выпускаемой по новому графику — с ежегодным выпуском новой ОС. Apple стала слишком большой компанией, чтобы позволять себе проволочки с выпуском новых операционных систем, как это было в своё время с Mac OS X Leopard. Новые iPad, iPhone, iOS появляются ежегодно, по графику, и нет никаких причин не распространить этот опыт и на платформу Mac. Переход к ежегодному графику выпуска новых операционных систем для Mac придаст динамики развитию платформы, пусть и сделав его более эволюционным.
Отсутствие слова Mac в названии OS X Mountain Lion — не «чёрная метка», выданная платформе. Новая операционная система просто даёт понять, какими будут, извините за каламбур, персональные компьютеры в эпоху Post-PC. В эпоху, когда в центре индивидуальной информационной среды обычного пользователя будет не компьютер, а облако. И наиболее распространёнными клиентскими устройствами, опять же, будут планшеты, смартфоны, телевизоры и, скорее всего, что-нибудь ещё — но не ПК. Персональный компьютер, к которому мы привыкли, идеологически не менялся с 1984 года, когда был представлен первый Macintosh. Парадигма рабочего стола с отдельными файлами-документами, персональная информационная среда, полностью заключённая в устройстве — все эти особенности ПК, не изменявшиеся в течение почти трёх десятилетий, постепенно отходят в прошлое. Грядущие изменения — самые большие за всю историю ПК. Фактически, они проводят жирную черту между многолетним опытом использования традиционных ПК и будущей моделью взаимодействия компьютеров с облачными сервисами. OS X Mountain Lion — первая операционная система Apple для настольного компьютера эпохи Post-PC. Может, в её названии нет слова Mac именно поэтому?