Олег Свиргстин
В мае этого года Apple Computer объявила о недавно разработанной стратегии в области развития операционных систем и программного обеспечения. Перспективная ОС, получившая название MacOS X, выйдет в свет в конце 1999 г., и объединит в себе традиционную MacOS и Rhapsody. Это следующий логический шаг в развитии стратегии двух операционных систем, объявленной Apple в начале 1997 г.
Новая стратегия не отменяет старую - время, отведенное для последней, подходит к концу, цели, поставленные ею, достигнуты или близки к достижению. В самом деле, Rhapsody CR 1.0, где CR означает “коммерческий релиз”, выходит в свет этой осенью, а стратегия двух ОС обещала выход версии новой ОС в конце 1998 г. Традиционная MacOS тоже следует предписаниям: выпуск новой “большой” версии - ежегодно, выпуск одной “модификации” системы - дополнительно каждый год. Самое время решать, что делать дальше.
Rhapsody состоит из нескольких модулей. YellowBox (наследник NextStep/ OpenStep, существенно обновленный и улучшенный, тот самый “золотой ящичек”, ради которого все это и затевалось) - это и есть “современная операционная система”. BlueBox - блок совместимости с традиционной MacOS, позволяющий отрабатывать практически все прикладные программы для этой системы. И наконец, полная инсталляция коммерческого UNIX POSIX/BSD. Rhapsody разрабатывается как для PowerPC, так и для Intel (версия для Intel не поддерживает BlueBox), кроме того, YellowBox разрабатывается для применения в таких ОС, как Windows 95/98/NT и традиционная MacOS.
Rhapsody CR 1.0 реализует все эти замыслы. Главная цель стратегии 1997 - 1998 гг. - современная операционная система для Макинтош - практически достигнута. Стратегия на 1999 г. ставит другие цели: унификация, объединение всех усилий.
Новая операционная система MacOS X (имеется в виду цифра 10, хотя “побочные значения” типа “система Икс” или “расширенная система” кажутся тоже вполне уместными, так как отражают суть) включает в себя все элементы Rhapsody 1.0 плюс еще один дополнительный модуль, получивший название Carbon (по-русски “Углерод”).
На настоящий момент выпуск этой операционной системы для других платформ (кроме PowerPC) не планируется. Вообще-то, платформа на основе х86, сколь бы внушительно ни выглядела ее доля рынка сегодня, не вечна; более того, перспективные разработки фирмы Intel используют принципиально другую архитектуру... PowerPC тем временем продолжает набирать очки. В случае необходимости и YellowBox, и Carbon - благодаря особенностям своего устройства - относительно безболезненно могут быть адаптированы к любой достойной того архитектуре.
Что же такое Carbon, отличающий MacOS X от Rhapsody? Для MacOS написаны десятки тысяч программных продуктов, в том числе жизненно важные для практического применения компьютеров Макинтош, такие, как Adobe Illustrator, Adobe Photoshop, QuarkXPress, Microsoft Office 98... BlueBox позволяет им работать в новой операционной системе, но никаких преимуществ по сравнению с выполнением в обычной MacOS они не получают. Ни вытесняющей многозадачности, ни защищенной памяти, ни устойчивости новой операционной системы - программы остаются в старом мире, от оков которого так хотелось бы освободиться.
Разработка с нуля каждой из этих программ под современную ОС в составе Rhapsody заняла бы от года до двух, потребовала бы привлечения значительных ресурсов, к тому же, несмотря на всю привлекательность YellowBox для разработчиков, а также эффективность и отлаженность среды разработки, многие фирмы на эти затраты ни за что не пошли бы. И что же? Очередная катастрофа?
В процессе разработки QuickTime 3.0, чей набор функций для Windows 95/98/NT в мельчайших деталях соответствует набору функций QuickTime 3.0 для Макинтош, команда разработчиков проделала огромную работу по реализации множества системных вызовов Макинтош в среде Windows. Методика и проблемы, выявленные в результате разработки одного из наиболее грандиозных и успешных проектов Apple за всю ее историю, легли в основу еще одного амбициозного проекта.
MacOS родилась в 1978 - 1984 гг. За последние 15 лет система существенно выросла в объеме, многие части исконного древнего кода были переписаны и модернизированы. Тем не менее в глубинах ОС до сих пор можно встретить кусочки кода, чьи исходники не были тронуты рукой программиста с конца семидесятых. Кроме того, требование поддержания совместимости с предыдущими версиями заставляло бережно хранить огромное количество устаревших системных вызовов, так называемых API. Всего в современной MacOS более 8000 API. Анализ показал, что часть из них абсолютно не совместима с функциями, которые должна обеспечивать современная операционная система.
Было решено убрать из системы примерно 2000 API - несовместимых, устаревших, являющихся частью забытых технологий. Новая система, получившая название Carbon, полностью отвечает всем требованиям современной операционной системы. А как же программы? Фирма Apple разработала и поместила на свой сайт для бесплатной загрузки программу Carbon Dater (углеродный датчик), с помощью которой можно определить, какой процент ее исходного кода совместим с Carbon. Данные по многим программам опубликованы, в среднем это 90 - 91%. Программу, приведенную в состояние стопроцентной совместимости с Carbon, можно откомпилировать для традиционной MacOS и продолжать использовать, обеспечивая общность кодовой базы. Время на доводку программы, включая собственно переработку исходного кода, отладку и прочие мероприятия, связанные на различных фирмах с выпуском очередного обновления продукта, не превышает одного-двух месяцев.
Предварительные спецификации Carbon опубликованы. Его внутренняя предварительная версия была разослана ряду ведущих разработчиков программного обеспечения для Макинтош, таких, как Microsoft, Adobe, Macromedia, Metrowerks и другие. Время переноса оказалось действительно невелико.
А как же немодифицированные программы для MacOS? Они продолжают работать, так как им просто недоступны все эти полезные новшества. За их исполнение отвечает BlueBox. Пользователь Mac OS X просто запускает программы, не заботясь о том, программа ли это для Carbon, YellowBox или BlueBox. Со временем все больше программ будет приходить из “золотого ящичка”, в котором будет вестись большинство новых разработок.
Стратегия двух операционных систем, объявленная Apple в начале 1997 г., хотя и была выходом из кризисной ситуации, тем не менее имела сильный побочный эффект. Сообщество Mac’овских программистов, и без того понесшее тяжелые потери, оказалось расколото надвое. Такова особенность многих лекарств - исцеляя одно, они портят другое... Mac OS X объединяет обе партии общей целью.
А что дальше? Поговаривают, что следующим шагом будет создание на базе Carbon и YellowBox нового, объединенного модуля системы. Слухи приписывают ему название типа Diamond (алмаз). Что ж, посмотрим. Выход бета-версии Mac OS X планируется на I квартал 1999 г., окончательной версии - на III квартал того же года. С начала 1997 г. Apple Computer ни разу не нарушила обещанных сроков, надеемся, не подведет и на этот раз.
С Олегом Свиргстиным, директором по ПО и “проповедником” Apple в компании DPI, можно связаться по телефону: +7 (095) 956-3974 или по адресу: http://www.dpi.ru.