История операционных систем Apple. Часть 7

История операционных систем Apple. Часть 1
История операционных систем Apple. Часть 2
История операционных систем Apple. Часть 3
История операционных систем Apple. Часть 4
История операционных систем Apple. Часть 5
История операционных систем Apple. Часть 6

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

История операционных систем Apple. Часть 7. Фото.

Такое решение также явилось следствием энтузиазма биохимика и лауреата Нобелевской премии Пола Берга (Paul Berg), с которым Джобс до этого несколько раз встречался. Берг с огромным одобрением отнесся к идее Джобса об использовании компьютера для проведения симуляции различных процессов. Хотя первоначально Apple испытывала заинтересованность в инвестировании в новое предприятие своего бывшего лидера, совет директоров Apple был очень рассержен, когда узнал, что Джобс переманил в свой стартап пятерых работников своей бывшей компании. Руководство Apple в связи с этой ситуацией даже подало на Стива в суд, однако менее чем через год вследствие полюбовного урегулирования иск было решено отозвать. Как вы уже догадались, речь идет о компании под названием NeXT Computer, Inc.

Стоит признать, что начало эпохи NeXT было достаточно впечатляющим с инвестиционной точки зрения. Джобс вложил в эту компанию 7 миллионов долларов собственных денег. Еще более существенные инвестиции были осуществлены несколькими годами поздней: сначала 20 миллионов долларов в NeXT вложил Росс Перо (Ross Perot), а затем компания Canon решила инвестировать в компанию еще 100 миллионов долларов. Компания NeXT стремилась создать компьютер, который был бы идеален как по внешнему виду, так и по функциональности. Его материнская плата имела очень практичную конструкцию и привлекательный дизайн, а магниевый корпус системного блока кубической формы был решен в черной расцветке и украшен матовой отделкой. Стойка для монитора также выглядела как результат кропотливой работы дизайнеров и инженеров. Кроме того, встроенный чип обработки сигнала позволял компьютеру проигрывать высококачественную музыку со стереофоническим звучанием. Эти машины производились на современном заводе, принадлежавшем NeXT.

NEXTSTEP

Джобс представил компьютер NeXT 12 октября 1988 года в Симфоническом зале Davies в Сан-Франциско. Его операционная система называлась NEXTSTEP и использовала в своем ядре порт CMU Mach 2.0 (со средой 4.3BSD). Оконный сервер этой системы был основан на Display Postscript – альянса языка описания страниц и технологий оконных систем (компания Sun Microsystems представила NeWS, свою собственную систему Display Postscript Window System, в 1986 году). Порт Mach, использованный в NEXTSTEP, также включал в себя несколько конкретных функций NeXT и функций следующих поколений CMU Mach.

История операционных систем Apple. Часть 7. NEXTSTEP. Фото.

В качестве нативного языка программирования NEXTSTEP использовал Objective-C и включал в себя Interface Builder – инструмент для создания приложений при помощи графического пользовательского интерфейса. В комплект системы также входило несколько «наборов инструментов программистов» (коллекции шаблонов классов и объектов), в числе которых Application Kit, Music Kit и Sound Kit.

Objective-C

Objective-C является объектным, компилированным языком программирования, изобретенным в начале 1980-х годов инженерами Брэдом Коксом (Brad Cox) и Томом Лавом (Tom Love).  Этот язык фактически является расширенной объектной версией языка C, в которой динамическое связывание и синтаксис сообщений был вдохновлен таким продуктом как Smalltalk. Этот язык был несколько проще C++ и не оснащался несколькими функциями, присущими данному языку программирования, в числе которых множественное наследование и избыточное число параметров в операторе.

Кокс и Лав основали компанию StepStone Corporation, у которой NeXT лицензировала язык программирования и создала собственный компилятор. В 1995 году NeXT приобрела все права на принадлежавшую StepStone интеллектуальную собственность, связанную с  Objective-C. Компилятор Objective-C от Apple, использованный в Mac OS X, использовал видоизмененную версию компилятора GNU.

На момент выпуска кубического компьютера NeXT операционная система NEXTSTEP была доступна в версии 0.8. Полноценный релиз 1.0 будет выпущен спустя еще один год. Через год после выхода версии 1.0 стала доступна операционная система NEXTSTEP 2.0, предлагавшая такие усовершенствования как поддержка приводов CD-ROM и цветных мониторов, NFS, проверка орфографии в реальном времени, динамично загружающиеся драйверы устройств и многое другое.

История операционных систем Apple. Часть 7. Objective-C. Фото.

Осенью 1990 года инженер Тим Бернерс-Ли (Tim Berners-Lee) из компании CERN разработал с помощью компьютера NeXT первый веб-браузер, который предлагал возможности браузинга и редактирования в режиме WYSIWYG. Позднее коллега Тима Роберт Кайлау (Robert Cailliau) признает:

«Реализация прототипа Тима на платформе NEXTSTEP заняла всего несколько месяцев, благодаря высокому качеству и удобству в использовании системы разработки программного обеспечения, входящей в NEXTSTEP»

На выставке NeXTWORLD Expo 1992 года была представлена операционная система NEXTSTEP 486 для машин на базе x86a. Цена данной версии составляла 995 долларов США. Последняя версия NEXTSTEP, проходившая под номером 3.3, была выпущена в феврале 1995 года и включала в себя такие мощные инструменты для разработки программных приложений как Project Builder, Interface Builder и многие другие. Эти инструменты были дополнены огромными библиотеками пользовательских интерфейсов, баз данных, распределенных объектов, мультимедиа, сетевых функций и т.д. В систему также входил объектно-ориентированный инструмент Driver Kit для создания драйверов устройств. NEXTSTEP могла работать на таких платформах как 68k, x86, PA-RISC и SPARC. Кроме того, была возможность создавать единственную версию своего приложения, которая включала в себя бинарные коды для каждой поддерживаемой архитектуры. Такие структуры бинарных кодов назывались «толстыми» бинарными кодами.

Несмотря на все достоинства NEXTSTEP и элегантность аппаратного обеспечения, NeXT оказался экономически нерентабельным, не в последнюю очередь по причине неподъемной цены компьютера. В начале 1993 года Стив Джобс объявил, что компания выходит из бизнеса по производству устройств и сосредоточивает все свое внимание на продолжении разработки NEXTSTEP.

OpenStep

NeXT сотрудничала с компанией Sun Microsystems, чтобы совместно выпустить спецификации для OpenStep – открытой платформы, состоявших из нескольких API и фреймфорков, которые любой разработчик мог использовать для создания объектной операционной системы, работающей на базе основополагающей платформы. OpenStep API был реализован в таких платформах как SunOS, HP-UX и Windows NT. Собственной разработкой NeXT в этой области стала версия NEXTSTEP, совместимая OpenStep. Называлась она OPENSTEP 4.0 и вышла в свет в июле 1996 года, после чего очень скоро вышли версии 4.1 и 4.2.

История операционных систем Apple. Часть 7. OpenStep. Фото.

Тем не менее, OpenStep API и операционная система OPENSTEP так и не смогли радикально изменить положение дел в компании NeXT, которое по-прежнему оставалось очень печальным. Не помогли даже восторженные отзывы клиентов из деловой и правительственной сферы, которые пользовались продуктами компании. NeXT стала уделять все больше внимания своему продукту WebObjects – многоплатформенной среде для быстрого создания веб-приложений.

Как мы уже упоминали в предыдущей части, в начале 1997 года компания NeXT была приобретена Apple. В этом контексте главным достижением новой компании Джобса стало то, что разработанная впоследствии операционная система Mac OS X была основана на технологии NeXT. В то же время продукт WebObjects продолжил свое развитие позднее и получил поддержку Web Services и Enterprise Java. Стоит отметить, что сайты компании Apple, в числе которых онлайн-магазин и сервис .Mac, были созданы с использованием WebObjects.