Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #74, ЯНВАРЬ 2007 г.

следующий компьютер

ВЛАДИМИР СИНЕЛЬНИКОВ

Хакер, номер #074, стр. 074


VLAD@ONTHEFLY.RU ICQ#125126525

NEXT COMPUTER: ПРОШЛОЕ, НАСТОЯЩЕЕ И ЖИЗНЬ ПОСЛЕ СМЕРТИ

ПРОВАЛ КОМПЬЮТЕРА APPLE LISA И ДРУГИЕ БОЛЕЕ МЕЛКИЕ ПАКОСТИ ЗАСТАВИЛИ ОДНОГО ИЗ ОТЦОВ «ЯБЛОЧНОЙ» КОМПАНИИ СТИВА ДЖОБСА ОСНОВАТЬ ДЛЯ РЕАЛИЗАЦИИ СВОИХ ИДЕЙ НОВУЮ КОМПАНИЮ С ГОВОРЯЩИМ НАЗВАНИЕМ - NEXT COMPUTER. ПО ЕГО ЗАМЫСЛУ, «СЛЕДУЮЩИЕ КОМПЬЮТЕРЫ» ДОЛЖНЫ БЫЛИ ЗАНЯТЬ ПЕРСПЕКТИВНУЮ НИШУ НЕДОРОГИХ, НО МОЩНЫХ КОМПЬЮТЕРОВ ДЛЯ ТРЕБОВАТЕЛЬНЫХ ПОЛЬЗОВАТЕЛЕЙ И, ВОЗМОЖНО, СТАТЬ УБИЙЦАМИ МАКИНТОШ. ПОСМОТРИМ, ЧТО ИЗ ЭТОГО ПОЛУЧИЛОСЬ

[старт-ап.]

Джобс, будучи у руля Apple, основательно изучил и освоил весьма перспективный для продаж компьютеров образовательный рынок. Проанализировав опыт продаж Макинтошей и их старших братьев - Unix-станций, он сделал справедливый вывод: первые были недостаточно мощными, а вторые были слишком дорогими. Родилась стройная и перспективная концепция - создать компьютер, не имеющий этих недостатков. Серьезное влияние при его создании оказал на Джобса известный биохимик Пол Берг, профессор Стэндфордского университета, лауреат Нобелевской премии. Берг посоветовал Стиву разработать компьютер, пригодный для моделирования различных биохимических опытов и реакций, что позволило бы его университету сократить расходы на содержание реальных лабораторий. Ведь многие опыты можно было бы проводить на экране компьютера без использования дорогущего научного оборудования. По замыслу Берга и Джобса, такая машина должна была содержать в себе «Три Мега» - мегабайт памяти, мегапиксельное экранное разрешение и мегафлопную производительность.

После серии консультаций с Бергом и другими влиятельными университетскими деятелями концепции вылились в спецификации будущего компьютера. Для их реализации Джобс, используя свое влияние и «административный ресурс», переманил из Apple несколько талантливых и сумасбродных инженеров, разделявших его взгляды и бывших его горячими поклонниками. Первые инвестиции им удалось привлечь, выступив в американском телевизионном шоу «Антрепренеры». Миллиардер Росс Перо, сражавшийся с Бушем-старшим и Биллом Клинтоном в 1992 на президентских выборах, настолько проникся их оптимизмом, что немедленно решил раскошелиться на восьмизначную сумму.

Не будучи ограниченным в финансах, Джобс дал старт разработке компьютеров. Возглавил коллектив девелоперов Рич Пейдж, под началом которого в свое время был создан компьютер Apple Lisa. В то время как инженеры трудились над проектированием компьютера, Джобс ангажировал для участия в проекте известных дизайнеров. Пол Рэнд создал для Next логотип и фирменный стиль, а культовая студия промышленного дизайна Frogdesign взялась за внешний вид новых компьютеров.

Спустя год с момента старта проекта по разработке «Следующего компьютера» стало ясно, что имеющиеся на рынке операционные системы по разным причинам не вписываются в концепцию «Трех Мегов», и Джобсу приходится корректировать планы по его строительству. Вместе с хардверным бизнесом в стенах компании появляется и софтверный - было решено писать свою операционку на базе известного ядра Mach. Не размениваясь по мелочам, руководство Next приглашает на пост руководителя этого направления гранда UNIX-систем Ави Теваняна из университета Карнеги-Меллон.

[дети капитана Джобса.]

В 1988 году увидел свет первый из «Следующих», компьютер NeXTcube. Он был построен на популярном в 80-е процессоре 68k и обладал восемью мегабайтами оперативной памяти, винчестерами на 10-40 Мб, флопиком, шиной NuBus на материнской плате для карт расширения, сетевой картой Ethernet и даже магнитооптичским приводом Canon емкостью 256 Мб и, опционально, односкоростным внешним приводом CD-ROM производства Sony. Вместе с компьютером поставлялся 17" монохромный монитор с разрешением 1120х832 пикселов. Представление компьютера несколько раз откладывалось в течение полугода и когда оно, наконец, произошло, журналисты поинтересовались, почему произошла задержка? На что невозмутимый босс NeXT Стив Джобс ответствовал: «Какая еще задержка? Этот компьютер опережает свое время на пять лет».

И он действительно опережал его: кроме передовых приводов от Sony и Canon машины от NeXT'а комплектовались клавиатурами, на которых имелись кнопки управления питанием, яркостью монитора и громкостью звука. Такие возможности появились лишь спустя несколько лет на компьютерах Макинтош, а на банальных ПиСи чуть ли не десять лет спустя. Звук на «Следующих» компьютерах был на редкость качественным благодаря присутствию специального DSP-процессора, выполнявшего задачи по его обработке. Для воспроизведения звука можно было приобрести Soundbox, который являлся вовсе не прозаичной «компьютерной колонкой», а представлял собой самый настоящий аудиоинтерфейс для воспроизведения и записи (!) звука.

Кубические компьютеры пришлись по вкусу ученым и студентам и благодаря маркетинговому таланту Джобса начали неплохо продаваться. Концепция «Трех Мегов» показала свою жизнеспособность на практике, и компания берется за разработку еще одной линейки «Следующих». К этому времени были проанализированы недостатки как аппаратной части «кубиков», так и их слабые маркетинговые стороны. К ним относились все еще высокая стоимость компьютера, проблемы с магнитооптическим драйвом, высокая стоимость дисков для него и ряд других.

За NeXTcubе последовала серия NeXTstation, в которой использовались следующее поколение процессоров от все той же Motorola и была исключена магнитооптика. Компьютер стал более мощным и доступным по цене, а за плоский широкий корпус его прозвали «коробкой из-под пиццы». Улучшившееся соотношение цена/качество позволило маркетологам начать экспансию в бизнес-сегмент, на корпоративные рынки. Но, несмотря на все их усилия, за несколько лет удалось продать только 50 тысяч компьютеров.

В 1992 году начато проектирование новой линейки рабочих станций на чипах PowerPC 601. Однако перспективному мультипроцессорному компьютеру NeXT RISC Workstation так и не суждено было увидеть свет. В 1993 году компания NeXT принимает решение прекратить производство компьютеров и сосредоточиться на разработке программного обеспечения. Компания меняет имя с NeXT Computer на NeXT Software.

[«следующий» софт.]

Для пробивания дороги на рынок Джобс пытался использовать проверенные в Apple ходы - печатался специализированный журнал NeXTWORLD magazine и проводилась ежегодная выставка NeXTworldExpo (прямой аналог MacworldExpo). Однако, несмотря на все ухищрения, привлечь крупных вендоров программного обеспечения на новую платформу не удалось, за исключением разве что Lotus. Стросс Рэндал в книге «Steve Jobs and the NeXT Big Thing» писал, что когда Билла Гейтса спросили, будет ли он разрабатывать софт для NeXT, он ответил: «Писать для них софт? Я лучше пописаю на них!» (оригинальная лексика Дяди Билла сохранена со слов автора книги).

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

Другим героем NeXT стал Джон Кармак. Хоть его игры и были ориентированы на писюки, но целевая платформа была слишком слаба для того, чтобы разрабатывать на ней же насыщенные графикой гамесы. Именно на NeXT'ах проектировались уровни и создавалась неповторимая атмосфера таких игр, как Wolfenstein 3D, Doom и Quake.

Платформа также отметилась и на поприще профессиональной графики: компания Cambridge Animation Systems разработала первую версию знаменитого пакета Animo именно для компьютеров NeXT. С его помощью были созданы «Аладдин», «Чудеса на виражах», «Чип и Дейл», «Игрушечная история» (список можно продолжить еще на полстраницы). Нельзя не вспомнить культовый векторный редактор Altsys Virtuoso, сегодня известный как Adobe FreeHand, а также легендарный Pixar Renderman.

Но главным достижением компании, конечно, было не передовое железо, а операционная система NeXTSTEP, первая официальная версия которой вышла в 1989 году. Есть мнение, что при создании этой ОС использовались наработки закрытого с уходом Джобса из Apple проекта Pink (перспективная объектно-ориенированная ОС для Макинтош), однако ни подтверждений, ни опровержений этому до сих пор нет. ОС NeXTSTEP представляла собой клон BSD UNIX, но использовала в качестве ядра Mach, а в качестве языка программирования - Objective C. Поистине революционный графический интерфейс Display Postscript был основан на языке Adobe PostScript. Все, что отображалось на дисплее, было на самом деле файлом PostScript, - просто праздник для профессионналов-полиграфистов. Аналогичная концепция спустя почти десять лет была использована в Mac OS X (графический интерфейс Qurtz) и сейчас запланирована для реализации в грядущей версии ОС Microsoft Vista. Система была портирована на различные платформы, в том числе и на Intel, но на последнем распространения не получила из-за агрессивного маркетинга корпорации Microsoft, впаривавшей Windows 3.1 всем, кому ни попадя.

MACH - МИКРОЯДРО ОПЕРАЦИОННОЙ СИСТЕМЫ, РАЗРАБАТЫВАВШЕЕСЯ ВПЛОТЬ ДО ТРЕТЬЕЙ ВЕРСИИ В УНИВЕРСИТЕТЕ КАРНЕГИ-МЕЛЛОН В ПЕРИОД С 1985 ПО 1994 КАК ЗАМЕНА ЯДРА BSD UNIX. ВЕДУЩИЕ РАЗРАБОТЧИКИ МИКРОЯДРА РИЧАРД РАШИД И АВИ ТЕВАНЯН В НАСТОЯЩЕЕ ВРЕМЯ РАБОТАЮТ, СООТВЕТСТВЕННО, В MICROSOFT И APPLE. С 1995 ГОДА ИНИЦИАТИВУ ПОДХВАТИЛ УНИВЕРСИТЕТ ЮТЫ, ГДЕ БЫЛА НАЧАТА РАБОТА НАД ВЕРСИЕЙ 4.0. КАК ТАКОВАЯ ЧЕТВЕРТАЯ ВЕРСИЯ НЕ БЫЛА ЗАВЕРШЕНА И ПОЗЖЕ ТРАНСФОРМИРОВАЛАСЬ В ПРОЕКТ XMACH (HTTP://XMACH.ORG). ЭТО МИКРОЯДРО ЯВЛЯЕТСЯ СЕРДЦЕМ ТАКИХ СИСТЕМ, КАК NEXTSTEP, OPENSTEP И MAC OS X

Идеи NеXTSTEP пришлись ко двору в Sun Microsystems. Эти компании в надежде положить конец несовместимости различных диалектов UNIX разрабатывают универсальный OPENSTEP АРI, обладающий настоящей кроссплатформенностью и поддерживающий любую объектно-ориентированную операционную систему. Так же, как и NEXTSTEP, эта среда написана на языке Objective C и использует ядро Mach. OPENSTEP был портирован практически на все ОС от HP-UX до Windows NT. Имеется также и реализация этого API, выпущенная под лицензией GNU GPL (см. врезку), что стало возможным благодаря открытой публикации стандартов OPENSTEP API.

Вторым крупным проектом после ОС NеXTSTEP и первым по финансовой отдаче для NeXT стал WebObjects, сервер веб-приложений Java, выросший в дальнейшем в мощную интегрированную среду разработки. Первая версия сервера была выпущена в марте 1996 года и стала первым в мире объектно-ориентированным сервером веб-приложений. Преимущества объектно-ориентированной разработки быстро оценили как крупные компании, так и мелкие веб-разработчики, благодаря чему «Следующим» удалось срубить приличное количество капусты на заре становления электронной коммерции и пафосных доткомов.

Среди крупнейших клиентов - Disney, Dell Computer и BBC News. Не осталась в стороне и Apple: после приобретения NeXT на базе WebObjects были построены сайты Apple Store, онлайновые сервисы .Mac и знаменитый музыкальный магазин iTunes Store.

Принципиальные особенности WebObjects - глубокая ориентация объекта, мощные возможности в работе с крупными базами данных и инструменты мгновенного прототипирования для создания прототипов без строчки кода в считанные минуты. Поскольку объектная концепция создает определенные трудности в работе с реляционными базами данных, было создано приложение Enterprise Objects Modeler, решающее эти проблемы. Благодаря нему объекты отображаются в базу данных автоматически и все это без единой строчки кода - писать явные обращения к БД больше не нужно!

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

[дело NеXTSTEP живет и побеждает.]

К концу 90-х в Apple осознали, что текущая операционная система MacOS 8 не отвечает современным требованиям и развитие ее заходит в тупик. Ее слабыми местами были в первую очередь невозможность работы в гетерогенных сетях (без платных сторонних утилит) и особенности работы с памятью. На каждую программу выделялась фиксированная область, которая была недоступна прочим приложениям и не могла динамически меняться. Эта система в усовершенствованном виде перешагнула в будущем в девятую версию, но уже за несколько лет до этого ее участь была предрешена.

Кандидата на грядущую вакансию стали подыскивать на стороне. На роль новой операционки как нельзя лучше других подходили NеXTSTEP и BeOS, бывшие самыми близкими к MacOS идеологически и концептуально и, естественно, лишенные недостатков архаичной маковской ОСи тех времен. Близость объяснялась легко: авторы обеих систем в свое время успели поработать в Apple и разделяли ценности «яблочников», даже будучи по другую сторону конкурентных баррикад. Несмотря на то, что обе системы работали на собственных платформах, они были портированы как и на родную для Мака архитектуру PowerPC, так и на Intel.

Победа в негласном тендере досталась NеXTSTEP, предпочтение было отдано благодаря UNIX-корням системы, что с одной стороны гарантировало стабильность и качество, а с другой - предоставляло в распоряжение Фззду (шутливая кличка, данная яблочной компании любителями «преведа») огромную армию разработчиков. Кроме того, NеXTSTEP была частично совместима с МакОСью - она позволяла читать дискеты, монтировать сетевые и SCSI-диски.

В 1996 году яблочники приобретают NeXT и в обстановке строгой секретности запускают проект Rhapsody (кодовое наименование новой, десятой версии операционной системы для Маков). На реализацию этого проекта ушло три года упорного труда разработчиков, в результате чего каждый желающий смог получить «UNIX с человеческим лицом» всего за 129 долларов. Дизайнеры интерфейса постарались на славу - за красотами фантастического интерфейса Aqua невозможно было не только узреть юниксовые корни, но и даже опознать родителя системы, ОС NеXTSTEP. О нем лишь напоминал эффектный системный док, содержащий иконки запущенных и часто используемых программ. В 1999 году гадкий утенок NеXTSTEP (не поймите неправильно, эта метафора навеяна всего лишь разницей между графическими интерфейсами) превращается в прекрасную Mac OS X. Так кто там не верит в жизнь после смерти?

В ШИРОКИХ МАССАХ РАСПРОСТРАНЕНО ЗАБЛУЖДЕНИЕ, ЧТО ПЕРВЫМ БРАУЗЕРОМ БЫЛ MOSAIC. ПЕРВЫМ, ВСЕ-ТАКИ, БЫЛ WORLDWIDEWEB, БРАУЗЕР «ОТ СОЗДАТЕЛЯ ВСЕМИРНОЙ ПАУТИНЫ» СЭРА ТИМА БЕРНЕРС-ЛИ, А «МОЗАИКУ» ЗАРЕЛИЗИЛИ СПУСТЯ ТРИ ГОДА ПОСЛЕ НЕГО. ВО ИЗБЕЖАНИЕ ПУТАНИЦЫ С НАЧИНАВШИМ ВХОДИТЬ В ОБИХОД ТЕРМИНОМ «ВСЕМИРНАЯ ПАУТИНА» АВТОР ДАЛ БРАУЗЕРУ ВМЕСТО WORLDWIDEWEB НОВОЕ ИМЯ NEXUS. ПОЧЕМУ ЖЕ ОН БЫЛ СОЗДАН ИМЕННО НА ПЛАТФОРМЕ NEXT? ЛОГИКА ПОДСКАЗЫВАЕТ, ЧТО ПОТОМУ, ЧТО ЭТИ МАШИНЫ БЫЛИ ШИРОКО РАСПРОСТРАНЕНЫ В НАУЧНОЙ СРЕДЕ ТЕХ ВРЕМЕН. ВОТ ЧТО ГОВОРИТ ОБ ЭТОМ САМ АВТОР ПРОГРАММЫ (ЦИТАТА С ЕГО СТРАНИЧКИ НА САЙТЕ HTTP://W3C.ORG):

«Я ПИСАЛ ЭТУ ПРОГРАММУ НА NEXT'E. В ЭТОМ БЫЛО ПРЕИМУЩЕСТВО, ПОСКОЛЬКУ БЫЛИ ДОСТУПНЫ ОТЛИЧНЫЕ ИНСТРУМЕНТЫ РАЗРАБОТЧИКА, ДА И В ЦЕЛОМ ЭТО БЫЛА ВЕЛИКОЛЕПНАЯ ВЫЧИСЛИТЕЛЬНАЯ СРЕДА.

ДЕЙСТВИТЕЛЬНО, Я СМОГ СДЕЛАТЬ ЗА ПАРУ МЕСЯЦЕВ ТО, НА ЧТО УШЛО БЫ БОЛЬШЕ ГОДА НА ДРУГИХ ПЛАТФОРМАХ. APPLICATION BUILDER (СРЕДА РАЗРАБОТКИ ДЛЯ NEXT) ПОЗВОЛИЛ СОЗДАВАТЬ ИНТЕРФЕЙС ТАК БЫСТРО, НАСКОЛЬКО ВЫ МОГЛИ БЫ СЕБЕ ЭТО ПРЕДСТАВИТЬ. ДЛЯ ЕГО РАЗРАБОТКИ ПРИМЕНЯЛИСЬ ГОТОВЫЕ ЭЛЕМЕНТЫ, КОТОРЫЕ ИСПОЛЬЗОВАЛИСЬ ПРИ СОЗДАНИИ БРАУЗЕРА В WYSIWYG-РЕЖИМЕ. МНЕ ОСТАВАЛОСЬ ТОЛЬКО ДОБАВИТЬ ГИПЕРТЕКСТ, КАК ПОДКЛАСС ОБЪЕКТА ТЕКСТ».

ВМЕСТЕ С БРАУЗЕРОМ БЕРНЕРС-ЛИ РАЗРАБОТАЛ ПЕРВУЮ ВЕРСИЮ ПРОТОКОЛА HTTP, КОНЦЕПЦИЮ ЕДИНОЙ СИСТЕМЫ АДРЕСАЦИИ URL И СОБСТВЕННО ЯЗЫК РАЗМЕТКИ ГИПЕРТЕКСТА HTML. К КОНЦУ 1990 ГОДА ОН ЖЕ РАЗРАБОТАЛ ПЕРВЫЙ В МИРЕ САЙТ ДЛЯ ИНСТИТУТА CERN, В КОТОРОМ ТРУДИЛСЯ. САЙТ СОСТОЯЛ ИЗ ОДНОЙ СТРАНИЧКИ - ИНСТИТУТСКОГО ТЕЛЕФОННОГО СПРАВОЧКА.

GNUSTEP: СВОБОДНАЯ ИНКАРНАЦИЯ OPENSTEP

GNUSTEP - ЭТО СРЕДА РАЗРАБОТКИ ИЛИ, КАК СЕЙЧАС МОДНО ГОВОРИТЬ, ФРЕЙМВОРК, СОЗДАННЫЙ ПО СПЕЦИФИКАЦИЯМ СРЕДЫ OPENSTEP. ПРЕДСТАВЛЯЕТ СОБОЙ КРОСС-ПЛАТФОРМЕННЫЙ НАБОР БИБЛИОТЕК OBJECTIVE-C, WIDGET-ИНСТРУМЕНТАРИЯ И УТИЛИТ РАЗРАБОТКИ ИНТЕРФЕЙСОВ ДЛЯ UNIX-ПОДОБНЫХ ОПЕРАЦИОННЫХ СИСТЕМ И MS WINDOWS. РАСПРОСТРАНЯЕТСЯ ПО ЛИЦЕНЗИИ GNU GPL. В МИРЕ LINUX ОТДЕЛЬНЫЕ РЕНЕГАДЫ ПРОЧАТ GNUSTEP (WINDOW MAKER) В КОНКУРЕНТЫ ТИТАНАМ KDE/GNOME В СИЛУ ЕГО МЕНЬШЕЙ ТРЕБОВАТЕЛЬНОСТИ К ВЫЧИСЛИТЕЛЬНЫМ РЕСУРСАМ. В БЛИЖАЙШИЕМ БУДУЩЕМ РАЗРАБОТЧИКИ ОБЕЩАЮТ ДОБАВИТЬ ПОДДЕРЖКУ ИНТЕРФЕЙСА APPLE COCOA, ЧТО ЗНАЧИТЕЛЬНО ОБЛЕГЧИТ ПОРТИРОВАНИЕ СОФТА С МАКИНТОШ НА LINUX И WINDOWS.

С помощью GNUstep написан оконный менеджер Этуаль. Этот проект ставит целью сблизить устаревающий интерфейс NEXTSTEP с современными наработками Apple. Разумеется, никакой официальной связи между этим проектом и «яблочниками» нет, просто разработчикам Этуаля нравится Mac OS X :). Менеджер поддерживает темы: каждый, кто знаком с графическими редакторами, сможет украсить систему на свой вкус.

Содержание