Возможно, следующей будет Mac OS 10.6 "Snow Leopard"

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

О том, что новая операционная система, с очень большой вероятностью, будет Mac OS 10.6, можно узнать, покопавшись в установщике шестой бета-версии iPhone SDK.

Неизвестному источник сообщает, что новая версия Маковской операционной системы будет Mac OS 10.6 (а не 11.0), что ее кодовое наименование - "Snow Leopard"... И кое-какие подробности еще, о них ниже. Звучит очень правдоподобно, но...

Откуда у меня сомнения? Операционная система, известная всем как Mac OS 8.0, почти до самого последнего момента должна была стать Mac OS 7.7. Mac OS 9.0 была переименована из Mac OS 8.7 за несколько дней до ее выхода. Номер версии системы запросто может измениться перед ее выходом.

И даже единственный "железобетонный" факт - вовсе не факт. Упоминание 10.6 в iPhone SDK вполне может быть опечаткой, или даже шуткой. Известно, что Mac OS 10.5 "Leopard" - не последняя операционная система для Маков, и что на нынешней WWDC, согласно традиции, о ней что-то должно быть сказано.

Год назад Apple защитила юридически несколько наименований видов "больших кошек", таких как Coguar и Lynx (которые не относятся к подсемейству "больших кошек", но мы ведь не будем педантами), и тем не менее, отсутствующий в этом списке Snow Leopard вполне возможен, и он вполне... отвечал бы стилю Джобса.

В русском переводе snow leopard - "снежный барс", или "ирбис". Но если систему и правда назовут именно так, нет никаких сомнений, что теперь и по-русски этого зверя будут называть снежным леопардом. Не повезло ему.

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

На самом деле, обычный леопард относится к роду пантер (вместе с тиграми, ягуарами и львами), а снежный леопард - к своему собственному, к роду снежных леопардов, в котором он единственный. Других ненормальных котов, предпочитающих жить высоко в горах, не нашлось.

Грандиозных открытий в новой системе не будет. Зато, как утверждает источник, в ней будут грандиозные закрытия, исторические по своему масштабу. Одно из них - прекращение поддержки архитектуры PowerPC. Собственно, об этом можно было догадаться...

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

1. Плохая новость для приверженцев Carbon

Источник, скорее всего, маркетолог. Не в обиду - на Apple работают настоящие маркетологи - им известно о многом, но не на слишком большую глубину. Или это попытка сбить Apple Security со следа?

Источник утверждает, что Snow Leopard будет Cocoa-only. В ответ на естественный вопрос журналиста интернет-издания Ars Technica, что бы это значило, он ответил, что в Snow Leopard не останется библиотек "только с Carbon-интерфейсом". И что Carbon уйдет в прошлое. Совсем.

Название Carbon в Mac OS X имеет, как минимум, два значения. "Малый" Carbon - это библиотеки с наборами интерфейсных элементов, произошедшими от интерфейсных элементов классической системы, и с новыми, основанными на HIObject. В 10.5 64-битные варианты интерфейсных элементов Carbon, по личному распоряжению Джобса, были исключены и удалены.

В ранних бетах "Леопарда" поддержка 64-битности в интерфейсных классах Carbon была, и даже работала, а в поздних и в окончательном релизе от нее не осталось и следа. Первый звоночек?

Есть еще и "большой Carbon" - все библиотеки и пакеты библиотек, написанные на Си и Си++, входящие в систему. Многие технологии, и в нынешнем "Леопарде", все еще существуют именно в таком виде. Например, к Carbon часто относят Core Foundation, огромный "псевдо-объектно-ориентированный" набор API на чистом Си.

Этими API пользуются и из Carbon, и из Cocoa. Более того, Cocoa использует Core Foundation в качестве фундамента. Основная графическая библиотека (точнее, это целый комплекс библиотек) Mac OS X, Core Graphics, тоже строится на основе Core Foundation.

Библиотеки Core Graphics известны "в миру" как Quartz. Одно из важнейших и непревзойденных преимуществ Мака. Настоящий профессиональный графический движок. CG тоже используются как программистами Cocoa, так и программистами Carbon.

Насколько мне известно, "большой Carbon" обещали не обижать. Любая мало-мальски серьезная программа, написанная на Cocoa, использует хотя бы десяток-другой вкраплений "большого" Карбона.

С трудом верится, что 15 месяцев (с октября 2007 по январь 2009, когда 10.6, согласно источнику, должна выйти) будут потрачены на написание Cocoa-обёрток к Core Graphics и всем другим библиотекам, которых десятки, и с использованием которых из Cocoa никогда не было никаких проблем.

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

2. Другие предсказания источника

Итак, по информации безымянного источника, в 10.6 не будет поддержки PowerPC.

Возможно? Да. Вероятность такого шага очень велика.

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

Поддержка трех (Intel и PowerPC в Маках, ARM в iPod touch и iPhone) - обуза почти невыносимая, запросто способная затормозить любое движение вперед.

А вот что источник понимает под "64-битной чистотой" - ума не приложу. В этом месте, насколько я знаю, никаких проблем и не было. "Леопард" отлично работает как с 32-битными, так и с 64-битными программами. И даже с такими чудными программами, которые сами не 32-битные, но для каких-то своих нужд обращаются к 64-битным сервисам.

Подавляющее большинство программ, написанных для Mac OS X - 32-битные. Такие, например, как MS Office или Adobe CS. Кстати, еще и программы в этих комплексах... написаны в Carbon!

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

Надеюсь, источник или что-то не понял, или как раз занимается 64-битностью... и сбивает ищеек со следа?

А что если система перестанет работать не только на PowerPC, но и на 32-битных Intel Маках, с Intel Core (вместо 64-битных Intel Core 2)? Поддержка 32- и 64-битного программного обеспечения, скорее всего, останется.

Неясно, кроме всего прочего, оставят ли в "Снежном барсе" эмулятор PowerPC или от него тоже избавятся, выбросив вместе с ним и огромное количество программ, которые, по разным причинам, так и остались в версии "только для PowerPC"?

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

Как это все воспринимать? Зачем все это? И какой во всем этом должен быть скрытый смысл, как говаривал ослик Иа...

3. Зачем?

В 2007 году, когда официальный релиз "Леопарда" еще только-только должен был выйти, я узнал, что на Apple уже ведется разработка новой системы. Точнее, даже сразу двух. Одна из них - для очень-очень близкого будущего. Система-наследник. Видимо, это и был "Снежный Барс".

Джобс, в интервью по случаю официального выпуска "Леопарда", сообщил две интересные подробности о будущем операционных систем от Apple. Во-первых, Apple откажется от практики выпуска новых "больших" версий один раз в 2-3 года. Это де порочная практика, и большие версии, в ближайшее время, будут выходить с интервалом в 12-18 месяцев.

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

Если верить безымянному источнику, Snow Leopard должна быть выпущена в январе 2009 года. Через 15 месяцев после Leopard. То, что с ней собираются сделать, очень похоже на подготовку техники к большому наступлению. Из всех закоулков бронированных чудовищ извлекается хлам - ветошь, дерево... Все, что может гореть.

Снаряжение чистится, настраивается и перепроверяется. Оно ни в коем случае не должно дать противнику ни единого лишнего шанса на победу.

Вторая система, разработка которой ведется параллельно, скорее всего, и есть система "большого скачка". Именно про нее, я думаю, Джобс упомянул в интервью. В ней, судя по тщательности зачистки "Снежного барса", будут уже "открытия". И не простые открытия, а весьма серьезные.

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

И выйдет такая система, возможно, через 12-18 месяцев после "Снежного Барса", то есть, в январе или июне 2010. Когда там Microsoft планирует выпустить свою System 7? А может, для завершения "другой системы" Apple потребуется еще одна "большая кошка"?

4. Исторические параллели

В 1988 году, за несколько недель до выхода в свет System 6, системщики Apple собрались в выходные в одном из отелей (в доме отдыха?) на берегу океана. Не только отдых привлек их туда.

В конференц-зале отеля вечером того же дня состоялся исторический мозговой штурм, посвященный разрешению противоречий между двумя группами создателей Маковской системы. Условно - между консерваторами и прогрессистами.

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

Синяя команда выпустила в 1991 году System 7 (то есть, в 1991 году Apple сделала то, что Microsoft только-только собирается сделать... если вы не поняли, это шутка), и все остальные релизы классической Mac OS, до Mac OS 9.2.2. Розовая команда...

Розовая команда разработала отличную систему, которая никому не была нужна. Именно ее так не хватало Apple в 1996 году, что на ее приобретение на стороне пришлось потратить 400 миллионов долларов.

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

Джобс, как известно, рулит на Apple практически всеми вопросами, которые считает важными. И вроде, до сих пор он справлялся со своими задачами.

Будь Джобс у руля Apple в 1991 году... еще неизвестно, что бы было. И Джобс 1.0, и Джобс 2.0, время от времени, оказывались не в силах противостоять собственному темпераменту. И только многочисленные жизненные уроки, которые Джобс, кажется, хорошо усвоил, превратили его в третью версию самого себя.

5. Что делать?

Возможно, источник над нами просто издевается, и рассказанное им - очередной "сон Веры Павловны". Для тех, кто изучал русскую литературу после 1991 года, Вера Павловна и ее сны - персонажи романа Чернышевского "Что делать".

Во-первых, ждать. Возможно, на самом деле все не так страшно.

Во-вторых, и завершение перехода на Intel (то есть, прекращение поддержки PowerPC), и унификация сред разработки ("платформ") - неизбежны. Пусть даже не в ближайшей версии Mac OS.

А знание - сила. К прекращению и унификации надо готовиться.

Carbon был предназначен для облегчения миграции программного обеспечения для классической Mac OS в новую современную систему. В 1998-2002 годах он свое предназначение выполнил.

Кроме того, Carbon показался многим более подходящей средой для переноса программного обеспечения из Windows, и для разработки кросс-платформенных программ.

Во многих случаях, схожесть подходов в библиотеках Windows и Carbon сыграла с доверившимися ей недобрую шутку. Библиотеки Cocoa "иные", но с их помощью намного проще создать новый, бескомпромисно маковский интерфейс, к общему с другими платформами функциональному коду, чем перетаскивать код из Windows целиком.

В парадигме MVC (модель-представление-поведение), которой свято и трепетно следуют библиотеки Cocoa и их вариант для iPhone OS, суть любого программного обеспечения (функциональность) естественнее и правильнее всего превращать в "модель".

Objective-C, без малейших проблем, совместим с исходными кодами на Си и Си++. А все, что касается представления и поведения, в любом случае надо было бы переделывать. Иначе, как показывает практика, ничего хорошего все равно не получится.

Другое дело, что на русском языке про Objective-C и программирование для Маков и iPhone не опубликовано практически ничего...

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

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

Источник: Олег Свиргстин