Двадцать пять лет назад IBM представила генеральный план восстановления контроля над рынком PC. В ноябре 1987 года в магазины отправились первые дискеты с OS/2 версии 1.0. Microsoft разрабатывала ее вместе с IBM и в случае успешной реализации этих планов мир был бы совсем иным. И мир уже начал меняться.
Сейчас о OS/2 обычно вспоминают только в связи с той ролью, которую она сыграла в промышленной войне, окончившейся триумфальной победой Microsoft. На момент выпуска OS/2 в Microsoft работало 1800 человек, меньше, чем сейчас работает в ливерпульском телемагазине QVC. Microsoft даже не была крупнейшим производителем программ для PC. Но всего через несколько лет компания стала не только крупнейшим игроком отрасли, но и одной самых дорогих компаний в мире; один лишь слух о выходе Microsoft в новую нишу вызывал панику у существующих игроков.
Согласно традициям нашего издания я вернул старые программы к жизни и оценил OS/2 с современной точки зрения. Но гораздо интереснее вновь задать иной вопрос: могла ли IBM победить? Если именно OS/2 стала причиной поражения Синего Гиганта, то смогли бы они остановить Microsoft с помощью более хитрых планов? Давайте вернемся в те времена, когда мир еще не знал слов «платформа» и «экосистема» и вспомним, как выглядела отрасль информационных технологий в середине 1980-х.
Первичный суп: мир в 1987
Это была разобщенная вселенная. Серьезные деньги делались на старом железе, вертикально интегрированных системах. IBM была хозяйкой этой вселенной, только что уладив длившееся десять лет антимонопольное дело. В 1985 году в ней работало 405 000 человек — 12 Google.
В ближайшем конкуренте IBM, Digital Equipment, владевшей половиной рынка миникомпьютеров, работало 100 000 человек. Центр информационной отрасли находился в районе Бостона и Нью-Йорка, отражая влияние правительственных заказов времен холодной войны и MIT, крупнейшего технического университета в мире, расположенного в Бостоне, штат Массачусетс. Только-только начавшееся проникновение микропроцессоров на рынок привело к бурному обсуждению "открытых систем". В течение следующих лет «открытые системы» стали главным маркетинговым слоганом, почти сравнявшись по популярности с нынешними «облаками». Открытые системы значили Unix, а Unix значил Sun Microsystems — которая стала двигателем конкуренции на новом рынке сетевых рабочих станций.
Таким был деловой рынок. Игры и крутое мультимедиа жили на мощных 16-битных микрокомпьютерах, в числе которых были занявшие ниши аудио и (позже) видео обработки линейки Commodore Amiga и Atari ST. На фоне их успехов Apple Macintosh выглядел переоцененной игрушкой. По сути дела Mac был просто еще одним микрокопьютером на базе микропроцессоров семейства Motorola 68000 — очень хорошо сконструированным — но технически уступавшим намного более сложному Amiga и слишком странным для бизнеса. Какое-то время казалось, что Mac потопит Apple, но язык Postscript, принтер Apple LaserWriter и PageMaker создали компьютерную верстку и дали Apple непоколебимую опору в издательском деле.
Еще был IBM PC. Грубый, малофункциональный, неприкольный: PC умудрился собрать в себе худшее из всех миров. В качестве делового компьютера он значительно уступал рабочим станциям Sun. И какому идиоту могла придти в голову мысль купить PC домой? Его было бессмысленно использовать в качестве мультимедийной машины, не было даже звуковых карт, ему был доступен только примитивный писк.
Но у PC были свои преимущества. Офисы и отделы крупных компаний могли покупать собственные PC или его клоны и намного быстрее, проще и дешевле начинать работу с базами данных или электронными таблицами. Альтернативой были бюрократические процедуры запросов на получение рабочего времени на мейнфрейме и написания или переделки соответствующих программ. У PC был широкий выбор разнообразного железа, так как многочисленные компании продавали клоны или «совместимые» машины и процветающий рынок дилеров, обучения и поддержки. PC означал Novell для сетей, SCO Unix (или дюжину забытых альтернатив) для вертикальной интеграции, а для всего остального — крупнейшие компании этого рынка, Lotus Corporation и Ashton Tate. У вездесущих бизнес-приложений для PC — dBase, Lotus 1-2-3, WordStar и WordPerfect — были свои «экосистемы», состоящие из обученных пользователей, макросов, расширений и даже совместимых с ними серьезных программ для составления графиков и отчетов.
Наверное вы заметили, что кое-чего не хватает. Никто не знал самой идеи «API» или экосистемы — многостороннего рынка — потому что в те времена «платформа» на PC означала само приложение. DOS не предоставлял никакого API, только позволяющие что-то поломать прерывания. В голом DOS не было ничего, способного помочь начинающему разработчику. Если вы разрабатывали новое приложение для DOS, вам приходилось самостоятельно поддерживать всю периферию. Если у пользователя был принтер HP LaserJet или навороченная видеокарта Hercules, вам надо было самостоятельно писать для них драйвера. В 1989 году WordPerfect сместил WordStar с места самого популярного текстового редактора для PC во многом благодаря отличным драйверам.
DOS был не «операционной системой», а банальным загрузчиком. В DOS была примитивная файловая система «8+3». Никакого API не было — приложения делали все что хотели и на что были способны. А еще он был однозадачным, для многозадачности надо было устанавливать хаки от сторонних фирм.
Таким образом, к середине 1980-х перед IBM стояли два вызова. Первый — отбить натиск открытых систем, укрепить репутацию PC как деловой машины и вернуть его под родительское крыло. Второй — вывести PC на современный уровень, что означало многозадачность, поддержку сетей и графический интерфейс — всем этим уже наслаждались пользователи остальных систем. IBM планировала добиться этого тремя способами — новой программной платформой, новой железной архитектурой и новой стратегией. IBM сделала новую системную шину PS/2 закрытой, надеясь продавать лицензии производителям клонов и карт расширения. Но никто не хотел их покупать. Вместо того, чтобы сделать остальной мир несовместимым с IBM и, следовательно, непривлекательным для покупателей, PS/2 сделала компьютеры IBM несовместимыми с остальными миром. PS/2 продавала только IBM и в итоге компания сдалась.
Новая стратегия была грандиозной, всеохватывающей, маркетинговой чепухой под названием Systems Application Architecture и очень IBM-мовским ответом открытым системам. SAA обещала огромный набор стандартов, объединяющих интерфейсы IBM для разработчиков, пользовательские интерфейсы и протоколы связи. Но IBM давно перестала создавать разумные стандарты. Для примера, системы IBM не использовали промышленный стандарт для кодировки текста, ASCII — они использовали собственный, под названием EBCDIC — существовавший как минимум в шести разных версиях. SAA не сделала продукты IBM «открытыми системами».
Новая операционная система для PC
Третьим направлением усилий IBM была новая операционная система для PC — OS/2. В ней крылся новый вызов для компании. Много лет программы были лишь частью «компьютера», покупаемого клиентом, продавать программы отдельно от компьютеров IBM вынудило только решение министерства юстиции от 1968 года. Большая часть программного обеспечения продолжала писаться для конкретного железа и была жестко привязана к нему. IBM никогда раньше не продавала программы на открытом и зрелом рынке, где пользователи делают выбор сами. Это были неизведанные воды, в которых скрывались крайне агрессивные существа.
Со своей многозадачностью, отточенной многопоточностью, межпроцессными полезностями вроде каналов и очередей (IPC goodies like pipes and queues), графическим интерфейсом и новой файловой системой OS/2 ни в чем не уступала конкурентам. Ядро было очень хорошо спроектировано и способно одновременно выполнять практически любые приложения. В API OS/2 также прослеживалось дальновидное планирование системы с рассчетом на многолетнее использование.
IBM вела разработку OS/2 совместно с крохотной компанией Microsoft и несмотря на множество разногласий они как-то дошли до совместного выпуска системы.
OS/2 была по-настоящему новой «платформой». Но она была непривычной для пользователей и на момент запуска не имела ни одного приложения. OS/2 было нужно то, что мы сейчас называем «экосистемой». И что же делать в таком случае?
Что такое платформа?
IBM в то время не имела никакого представления о самой идее аппаратно-независимой платформы. В прямом смысле слова она не знала того, чего не знала. Но откуда она могла узнать это? Клиенты обычно покупали то, что им советовала IBM, вопросы вставали только в отношении сроков покупки. OS/2 требовался рынок разработчиков и поддержка со стороны производителей железа, чтобы OS/2 могла работать на широком спектре видеокарт, принтеров и другой периферии. Это была классическая проблема курицы и яйца. Зачем выделять средства на покорение рынка, которого еще нет?
При всей своей технической правильности OS/2 давала крайне мало преимуществ, а ее внедрение доставляло немало головной боли корпоративным службам поддержки.
Многозадачность приходит на PC: OS/2 версии 1.0
Размер и авторитет IBM вынудили нескольких крупных разработчиков сделать версии своих DOS-программ под OS/2, Ashton Tate, например, перенесла dBase, но переезд приложений еще не означал перемещения экосистемы. Разработка драйверов была адски трудной, спустя три года было крайне сложно что-то напечатать из под OS/2. В наше время производители платформ понимают, что им необходимо поддерживать, уговаривать и даже подкупать разработчиков приложений и драйверов. Microsoft знала это, IBM нет.
Обратная совместимость OS/2 тоже не впечатляла. Изначально спроектированная 16-битной, новая система не использовала новые возможности 32-битных процессоров Intel 386 по запуску виртуальных машин DOS. «Средство совместимости с DOS» в 16-битной OS/2 было медленным и ненадежным. Без привлекательных приложений и поддержки железа единственным преимуществом OS/2 оставалась возможность использовать в приложениях более 640 килобайт памяти. Но летом 1988 года произошел скачок цен на память, сделавший необходимые для OS/2 2 мегабайта крайне дорогими. Графический интерфейс пользователя был еще более требовательным, Presentation Manager делал большинство уже имеющихся PC слишком слабыми для OS/2.
Самым разумным выходом для пользователей стали сторонние патчи для DOS, добавлявшие многозадачность и расширявшие доступную память.
Первая версия OS/2 вышла на рынок в 1987 году, с многозадачностью и текстовым интерфейсом. Версия с графическим интерфейсом вышла только через год. В ней все еще не было современной файловой системы HFS, с поддержкой разделов и больших файлов.
OS/2 провалилась
Разные идеи рабочей станции
Летом 1988 один проект изменил взаимоотношения между партнерами. DOS не могла использовать более 640 килобайт оперативной памяти, что породило процветающий рынок расширителей памяти, которые с помощью различные трюков добивались выделения большего объема. Одним из несомненных преимуществ OS/2 был механизм работы с памятью, не накладывающий никаких ограничений вплоть до 15 мегабайт. Но этим летом один из редмондовских практикантов нашел способ запустить DOS в защищенном режиме Intel 286, дав ей больше памяти.
Начальник практиканта показал его работу Стиву Баллмеру и руководство Microsoft задумалось над возможностью использования оболочки Windows в качестве расширителя памяти для DOS. PC мог загрузить DOS, запустить Windows, и постепенно заменять компоненты DOS на нижнем уровне, аналогично замене колес на движущемся автомобиле без его остановки. Заковыристый способ. Но Windows была полна подобных хаков — в техническом смысла слова это был самомодифицирующийся код.
«Оболочка плюс расширитель памяти» не имела богатых API OS/2 — и система никогда не стала бы стабильной. В ней даже не было длинных имен файлов. DOS использовала архаичную систему 8+3 (“LTTR2BOB.WPD”) десятилетней давности. Она вообще не была операционной системой. Но у нее был графический интерфейс и с помощью дыма, зеркал и изрядного количества веры со стороны пользователей ее можно было представить как новую операционную систему.
С легкой натяжкой Windows можно было рекламировать как новую «платформу». Новая платформа означала, что все существующие приложения продолжают работать и скоро к ним присоединятся новые, сияющие и прекрасные. На тот момент ни одна графическая оболочка над DOS не имела серьезного преимущества. Вероятность победы была очень велика.
У Microsoft было несколько очень серьезных преимуществ. Во-первых у нее была очень хорошая позиция для развития «экосистемы», имелись средства разработки, она могла продавать их очень дешево и умела рекламировать Windows как «новую эпоху», что-то со все нарастающим ускорением. У Microsoft не было консервативных подразделений, которые надо было умиротворять.
Во-вторых, у нее были очень хорошие взаимоотношения с производителями PC. Они платили за MS-DOS вне зависимости от того, устанавливали ли они ее на PC. Покупателям было нужно нечто способное запустить dBase и Lotus 1-2-3. Microsoft могла с легкостью добавить Windows на все эти компьютеры, а первый запуск Windows был легким и безболезненным.
В-третьих, пресса и эксперты очень желали успеха Microsoft и провала IBM. Не потому, что они очень любили Microsoft. Но клоны создали процветающий рынок и никто не хотел, чтобы IBM вновь контролировала и железо и программное обеспечение. Никто не хотел возвращаться в мир, находящийся под властью одного огромного, вертикально интегрированного гиганта. Это не было очевидно летом 1990 года, спустя три года после анонса OS/2, когда вышла Windows 3.0, первая версия с поддержкой защищенного режима. Почти вся пресса считала Windows 3.0 еще одним соперником оболочки GEM и расширителя памяти Quarterdeck.
Развод
В течение многих месяцев перед выпуском Windows 3.0 летом 1990 года Microsoft распространяла ее копии, которые судя по всему достались всем значимым в отрасли людям. Было ясно, что Microsoft видит в Windows нечто больше, нежели цветок на могиле MS-DOS и прощальное слово до-OS/2-шному миру, который остается где-то позади. Ничего подобного. Microsoft проделала массу работы по увеличению привлекательности Windows и сверхактивно рекламировала ее среди разработчиков. Это была «псевдо-платформа», не являющаяся на самом деле новой ОС, но позволяющая разработчикам использовать графический интерфейс. Сытые по горло скудными продажами продуктов для OS/2 разработчики реагировали крайне положительно. В то же самое время Microsoft была обязана продолжать демонстрации 32-битной OS/2 прессе, и там было все то, чего так не хватало 16-битной версии.
Псевдо-платформа-мутант Microsoft Windows 3.0 была запущена с большим шумом и стала хорошо продаваться. Стало ясно, что в течение 1989 года как минимум некоторые из разработчиков, изучавших OS/2 Presentation Manager, на самом деле развернулись в сторону Windows. Windows давала им массу возможностей и превращалась в шанс получить рынок, пусть даже скромный и недолговечный. Но хоть что-то было лучше чем ничего. Вскоре под Windows стало появляться все больше приложений, после чего они пошли потоком, так как крупные производители приложений затыкали дыры в своем портфолио. Всего за один месяц Microsoft продала больше копий Windows чем IBM копий OS/2 за два года.
В течение 1988 и 1989 годов IBM несколько раз пыталась убедить Microsoft закрыть Windows, но Билл Гейтс отказался. После чего глава подразделения PC в IBM Джим Каннавино (Jim Cannavino) сделал хоть и непреднамеренную, но катастрофическую ошибку. Осознавая растущий энтузиазм Microsoft в отношении Windows он не смог ни признать их правоту и дать системе какие-то шансы ни разорвать соглашение с Microsoft. В итоге Windows получила прохладное одобрение — возможность появиться на свет и пространство для роста. Не смотря на полную несовместимость API Windows позиционировали как предварительную версию OS/2. У IBM было много возможностей избавиться от Microsoft и защитить OS/2, но эта ошибка была самой разрушительной.
Это было в сентябре 1989. Самой страшной ошибкой IBM было сохранение партнерских отношений с Microsoft и отказ от попыток подавить развитие Windows. Отношения между ними быстро портились, так как Windows продавалась огромными тиражами.
Экосистемные преимущества, которыми наслаждались Ashton Tate и Lotus, начали быстро испаряться. Windows предоставляла драйвера для устройств. Новые навыки сводились к умению обращаться с Windows. Знание запутанных последовательностей нестандартных горячих клавиш больше не было преимуществом. Разработчики WordPerfect отчаянно пытались удержать позиции, перенеся горячие клавиши из DOS в первую версию под Windows, но не добились успеха.
Марш на промышленные системы
В деловой сфере Windows PC начали использовать для запуска неуклюжих приложений для конечных пользователей с формами. В мае 1991 Microsoft запустила Visual Basic — скриптовый язык с графическим интерфейсом, примитивный, но способный вызывать процедуры из скомпилированных библиотек. Windows также дала огромное преимущество подразделениям Microsoft по разработке прикладных приложений. В мире DOS доля рынка Microsoft Multiplan и Word была невелика. Но позиции их Windows-наследников, Excel и Word 2.0, были гораздо сильней. Вдобавок к этому Microsoft начала продавать комплект из своих офисных приложений с базой данных Access и программой для работы с электронной почтой заметно дешевле конкурентов. Весь «Office для Wndows» стоил дешевле чем один dBase или Lotus 1-2-3.
Два года IBM и Microsoft вели пиар-войну на истощение. IBM не смогла убить Windows и должна была избавиться от Microsoft. Неизбежный развод произошел в апреле 1991. По итоговому соглашению IBM самостоятельно занялась разработкой 32-битной версии OS/2 и получила лицензию на включение в нее кода Windows. Microsoft немедленно прекратила разработку 16-битной OS/2, хотя еще несколько лет продолжала продавать Microsoft OS/2 LAN Manager, все уменьшая размер шрифта слова OS/2 на коробке.
Пол Кэррол (Paul Carroll) в своей книге Big Blues: The Unmaking of IBM отмечает, что на момент публичного развода Microsoft продала 13 миллионов Windows 3.0 в течение года, в то время как IBM продала всего 600 000 копий OS/2 за три года — из которых настоящими продажами были всего 300 000 — реально использовалось намного меньше. На волне продаж Windows и спроса на Windows-приложения самой Microsoft компания выросла с 1800 сторудников до 10 000.
Но не смотря на все это сила была не на ее стороне. Как позже писал сам Гейтс
И страшнее всего было то, в 32-битной версии OS/2 было все то, чего так не хватало 16-битной. Это была весьма впечатляющая система, просто она еще не была завершена.
Империя наносит ответный удар
Новая, 32-битная версия OS/2 полностью использовала возможности процессора Intel 386: плоскую модель памяти и способность виртуализировать сессии DOS, сохраняя связи между их процессами. 32-битная версия также поддерживала ненадежные расширители памяти DOS, давая DOS-приложениям быстрый, 32-битный доступ к памяти так, что они сами не замечали этого и запущенные в защищенных от падения виртуальных сессиях OS/2 DOS-приложения работали даже лучше, чем раньше. IBM и Microsoft в равной мере гордились этим. IBM брала Microsoft Flight Simulator, одно из самых требовательных к графике приложений для DOS — и запускала один экземпляр за другим, пока целая дюжина не начинала работать одновременно.
Внезапно OS/2 начала выглядеть намного лучше конкурентов, решая многие проблемы деловых пользователей DOS, с которыми они мучились много лет подряд. Даже Windows программы работали во множественных виртуализированных сессиях быстрее чем в DOS. В OS/2 совмещались лучшие черты всех миров: старые DOS-приложения с их обученными пользователями и дополнениями от сторонних фирм, новая волна Windows-приложений и родные приложения OS/2.
Тем не менее система задерживалась. IBM решила добавить блеска OS/2 с помощью радикально новой графической оболочки Workplace Shell. Это был не просто интерфейс пользователя, а набор обьектно-ориентированных библиотек классов, которые могли быть переопределены или расширены разработчиками. Workplace Shell добавляла в OS/2 многие возможности Mac и собственные новинки. Даже в наши дни она смотрится очень хорошо. Как это ни странно, но OS/2 становилась все популярнее среди энтузиастов, во многом благодаря потрясающим демонстрациям Дэвида Барнса (David Barnes), одного из великих демо-богов нашей отрасли. Вот Барнс во всем своем блеске в 1993 году.
Microsoft нужна была красивая история и они нашли ее. У них была новая, многопользовательская и переносимая на разные процессоры операционная система на ранней стадии разработки. Она оказалась судьбоносной. OS/2 3.0 или OS/2 NT стала одной из крупнейших пустышек (vapourware) в истории отрасли. В 1990 году в ней было лишь способное загрузиться ядро, только через три года кто-то смог купить ее и только через шесть лет она начала оказывать заметное влияние на рынок. Но она радикально изменила мнение общественности.
RISCовый бизнес и убийца Unix
В то время возможность работы на разных процессорных архитектурах казалось очень важной. Расхожая мудрость гласила, что архитектура микропроцессоров от Intel выдохлась и будущее за RISC. На рынке рабочих станций главенствовали новые RISC процессоры от MIPS и Sun (SPARC), за которыми следовали DEC (Alpha) и IBM (Power). Сложно было понять, кто из них в итоге победит.
Новая платформа-пустышка также обещала кое-что, что должны были сделать производители Unix, но не смогли: единую платформу с богатыми API. В мире Unix царила тирания мелких различий. Разработчики сражались за мельчайшие детали, не имевшие никакого значения для большинства пользователей. Они строили сложные планы и заговоры, обьединялись и расходились, выбрасывали большую часть привлекательных изменений (вроде NeWS Display Postscript UI от Sun) ради бесплодных попыток найти компромисс.
Unix должен был обьединиться, но IBM вступила в союз всех-кроме-Sun под названием OSF и возникшим вакуумом смогли воспользоваться предприимчивые маркетологи Microsoft. NT была пустышкой, но Microsoft пообещала помощь в ее переносе на MIPS, Alpha и даже IBM/Motorola PowerPC. Компания обещала, что в NT будут работать 16-битные программы OS/2 и POSIX билиотеки Unix. Microsoft так же обещала единообразный API Win32, позволяющий запускать программы и на NT и на Windows машинах на основе DOS. В 1993 году участники Unix-войн осознали угрозу и подписали единую „Spec 1170“, но это уже никого не волновало.
Несуществующая платформа позволила Microsoft удержать клиентов. Microsoft предлагала покупателям подождать 32-битную версию Windows, Chicago, которая должна была выйти в 1993 году. Она все еще базировалась на DOS, но предлагала пользователем многие преимущества OS/2 вроде длинных имен файлов — и должна была работать на 4 мегабайтах. Так же они дожны были готовиться к убийце Unix, Windows NT. NT должна была не просто убить Unix, но и со временем превратиться во всеобьемлющую, всемогущую, обьектно-ориентированную систему Cairo.
Обещания уходили за облака. IBM осознала, что у нее остался последний шанс вернуть рынок и хотя бы часть многомиллиардных затрат на разработку OS/2. Осенью 1994 была запущена изрядно оптимизированная версия OS/2 3.0 — Warp — сопровождаемая непривычной для IBM массовой рекламой по телевидению. Она поставлялась в двух вариантах — один включал Windows, другой использовал уже установленную на жесткий диск Windows. IBM гораздо раньше чем Microsoft осознала потенциал интернета — это была первая ОС, в поставку которой входил браузер. Microsoft в это время была занята амбициозным проектом тщательно огороженного сада, „убийцы Compuserve“, который должен был войти в Chicago, и даже не включила стек TCP/IP в Windows.
На короткое время OS/2 захватила воображение небольшой части покупателей, но так и не смогла изменить ситуацию на рынке — во многом потому, что из всех крупных производителей PC только сама IBM решилась продавать компьютеры с предустановленной OS/2. Служба поддержки IBM не умела работать с неподготовленными пользователями. Новых пользователей OS/2 встречал трудоемкий процесс установки, слабая поддержка железа, малое число родных приложений. OS/2 поддерживала приложения Windows так хорошо, что при отсуствии опасных конкурентов среди родных приложений OS/2 все серьезные разработчики сосредоточились на гораздо более выгодном рынке Windows.
В итоге Chicago вышла только в 1995 году под названием Windows 95 и не работала на 4 мегабайтах. NT была слишком большой и медленной для рынка, на ней не хватало офисных приложений — обещание переносимости Win 32 так и не было выполнено. NT вышла еще через год и пользователи потребовали оболочку Windows 95. К тому времени архитектура системы изменилась так сильно, что большинство обещанных особенностей так и не были реализованы. Microsoft ввела ограничения на количество сетевых соединений для рабочих станций (которые для этого могли использоваться как сервера отделов) и переместила графические драйвера в ядро, пожертвовав надежностью ради производительности. Про Cairo тихо забыли.
Последний рывок к славе
Поздним летом 1996 IBM признала свое поражение и перевела большую часть программистов на другие задачи. Она выпустила еще одну версию OS/2 в 1996, включив в нее распознавание голоса и более привычный интерфейс. Поддержка этой системы продолжалась много лет. Но война была окончена — Microsoft победила. В бессмысленности дальнейшего развития OS/2 CEO IBM Лоу Герстнера (Lou Gerstner) окончательно убедила смерть родных приложений OS/2. Частично в этом была виновата сама IBM. Знаменитая стратегия „Workplace OS“ подразумевала запуск персонализированных вариантов ОС поверх микроядра — но не смогла привлечь клиентов и так и не была доведена до конца. Больше 2000 разработчиков занимались переносимой версией OS/2, в основном рассчитанной на рабочие станции IBM с RISC процессорами, но так и не довели ее до стабильного состояния. Совместный с Apple проект объектно-ориентированной ОС Taligent окончился ничем. IBM не смогла купить Apple. Цепкая стратегия Microsoft Win32 покорила рынок.
WPS – WTF?!?
Workplace Shell впервые появилась в OS/2 версии 2.0, выпущенной в апреле 1992 — одновременно с Windows 3.1. Нет панели задач, нет каталога с программами, нет системного меню, нет меню выключения… все приложения размещаются в каталоге „Система“. Минимизированные приложения уходят в папку. В OS/2 был радикально новый интерфейс, в котором не хватало многих элементов современных UI. Откуда же он взялся?
Он родился из планов IBM о создании „офиса будущего“ — в исследовательских лабораториях придумали в буквальном смысле слова обьектно-ориентированную функциональность — вот она в печатной рекламе 1990 года, предшествующей Workplace Shell.
Над OfficeVision работало 1500 программистов, но проект так и не был завершен. Чтобы сдержать данное клиентам обещание о разработке среды для совместной работы IBM в 1996 году купила Lotus.
Такие средства автоматизации офисной работы было сложно продавать, но IBM подчеркивала их гибкость. Они были настолько гибкими, что вы могли менять шрифт и фоновое изображение у каждого окна и каждого элемента окна индивидуально. Были у Workplace Shell и более полезные возможности. Подобно Mac ярлыки (ссылки) на файлы отслеживали их перемещение. Каталоги-шаблоны могли содержать приложения и быстро клонироваться. Закрытие каталога минимизировало все приложения и документы, которые были с ним связаны. Были и другие странности. По умолчанию иконки нельзя было двигать мышью, хотя это быстро изменялось в настройках.
В последнюю версию OS/2 включили намного более привычные элементы. Системное меню давало быстрый доступ к каждому файлу, а над внешним видом иконок поработала дизайнер иконок Mac Сьюзан Кар (Susan Kare), которая также делала иконки для Windows 3.0.
OS/2 Warp 3.0 осенью 1994. Под давлением клиентов в OS/2 добавили спешно написанную панель задач.
Последний бой: OS/2 Warp 4.0 в 1996.
По каким-то причинам IBM сделала оглушительные звуки для каждого действия мышью (например перетаскивания).
Почему IBM проиграла?
Вокруг восхождения Microsoft на вершину отрасли PC до сих пор бурлят страсти. Если бы в 1987 вы сказали, что Intel и Microsoft 10 лет будут определять будущее отрасли, над вами бы просто посмеялись. Intel никак не могла создать конкурентноспособный RISC чип, а Microsoft никогда не писала операционных систем. Но у вопросов „Почему Microsoft победила?“ и „Почему IBM проиграла?“ совсем разные ответы.
IBM никогда раньше не сталкивалась с настолько предприимчивыми и безжалостными конкурентами, как Билл Гейтс. Гейтс сражался отчаянно и IBM так и не смогла от него избавится. Но вне зависимости от наличия OS/2 IBM могла бы переиграть его или даже банально задавить массой если бы разработала связную стратегию, дающую покупателям веские причины тратить деньги на IBM.
IBM могла осознать, что в 1988 году OS/2 была слишком революционной для покупателей. Она могла перехватить контроль над DOS и предложить клиентам более плавный переход в мир графических интерфейсов. На самом деле IBM именно это и пыталась сделать с проектом под названием PM for DOS — который так и не был завершен. Было уже слишком поздно. IBM могла купить Apple с самым привлекательным пользовательским интерфейсом и поставить его на прочный технологический фундамент. В качестве еще более революционного решения IBM могла осознать, в чем на самом деле заключается ценность программного обеспечения и перенести соперничество на уровень выше — создав бесплатную платформу вроде Linux.
Можно предложить много вариантов альтернативной истории — но большинство из них останутся игрой воображения. После того как Microsoft набрала силу и захватила умы разработчиков „единой платформе“ OS/2 было бы очень сложно вернуть их назад. Интереснее другой вопрос — почему Microsoft победила?
Прежде всего Microsoft безжалостно следовала требованиям рынка и заботилась лишь о количестве проданных копий Windows, ее не волновало отношение окружающих и теоретическая правильность предпринимаемых действий. Рынок не любил Microsoft, но Microsoft приносила рынку деньги. Производители программ, железа, периферии — все они зарабатывали больше с Microsoft. Программы бесили вас каждый день, но „экосистема“ в целом вглядела намного здоровей. IBM не имела ни малейшего представления о том, как строить новые экосистемы. Высокое начальство считало, что если они сделают систему и она будет хорошей (а она в конце концов стала такой), то покупатели найдутся — просто в силу магической силы трех букв IBM. Команда продаж IBM освоила много темных методов, включая использование других продуктов и услуг IBM, но они мало помогли в открытой схватке на ножах с Биллом Гейтсом.
Microsoft была полностью сосредоточена на одной задаче. Она не шла на компромиссы ради умиротворения подразделений, занятых другими продуктами. Гейтс не собирался, как многим тогда казалось, ограничиваться написанием приложений и инструментов для чужих платформ. Он хотел свою платформу. Microsoft очень хорошо поработала над Windows. Само собой огромным преимуществом Microsoft были крайне жесткие условия лицензионных соглашений. Производители PC должны были платить Microsoft за DOS вне зависимости от того, устанавливали ли они ее на компьютеры или нет — так зачем им было устанавливать альтернативы? В конце концов Microsoft проиграла антимонопольный иск и была вынуждена уступить требованиям Novell, Be и Sun. Но не забывайте, что для танго нужны двое. Частично в этом виноваты и недальновидные производители PC.
OEM-производители не стали протестовать против подобной политики Microsoft и позже это ударило по ним самим. После гибели конкурентов Microsoft подняла цены — это одно из примуществ монопольного положения. По мере падения цен на компьютеры все большая часть цены уходила Microsoft. Когда-то высокие прибыли OEM резко упали. Ни один из них не мог выделиться из общей массы, Microsoft не позволяла этого — она настаивала на единообразном „Windows experience“. Иногда для бизнеса выгодней пожертвовать текущими прибылями ради поддержания конкуренции и сохранения будущих прибылей. Многие активно занимаются этим — но не отрасль PC.
В последовавших за окончанием войны ОС разбирательствах многие поклонники OS/2 обвиняли компьютерную прессу в тотальной враждебности к этой системе. Во многом они были правы — журналистов, которые использовали и хвалили OS/2 можно пересчитать на пальцах одной руки. Одним из них был Джон Леттис (John Lettice), основатель The Register — другим ваш покорный слуга. Красивый сувенир OS/2 2.0 с иллюстрации выше все еще стоит в нашем офисе. Но пресса просто отражала общепринятые тогда мнения и экономические решения. Она тоже не хотела мира, в котором IBM определяет стандарты открытых систем.
Все были так заняты сражениями уходящей войны, что не заметили приближения новой. В 1995 году, когда война ОС все еще бушевала в Usenet (хотя всем было ясно, кто победил), Гай Кевней (Guy Kewney) так подытожил свое раздражение:
Дополнительно на тему OS/2 — воспоминания человека, который в то время работал в IBM (если они интересны, их тоже можно перевести)
IBM insider: How I caught my wife while bug-hunting on OS/2
Where were the bullet holes on OS/2's corpse? Its head… or foot?
Альтернативный обзор истории OS/2 на Хабре с подробными описанием технических моментов
Сейчас о OS/2 обычно вспоминают только в связи с той ролью, которую она сыграла в промышленной войне, окончившейся триумфальной победой Microsoft. На момент выпуска OS/2 в Microsoft работало 1800 человек, меньше, чем сейчас работает в ливерпульском телемагазине QVC. Microsoft даже не была крупнейшим производителем программ для PC. Но всего через несколько лет компания стала не только крупнейшим игроком отрасли, но и одной самых дорогих компаний в мире; один лишь слух о выходе Microsoft в новую нишу вызывал панику у существующих игроков.
Согласно традициям нашего издания я вернул старые программы к жизни и оценил OS/2 с современной точки зрения. Но гораздо интереснее вновь задать иной вопрос: могла ли IBM победить? Если именно OS/2 стала причиной поражения Синего Гиганта, то смогли бы они остановить Microsoft с помощью более хитрых планов? Давайте вернемся в те времена, когда мир еще не знал слов «платформа» и «экосистема» и вспомним, как выглядела отрасль информационных технологий в середине 1980-х.
Первичный суп: мир в 1987
Это была разобщенная вселенная. Серьезные деньги делались на старом железе, вертикально интегрированных системах. IBM была хозяйкой этой вселенной, только что уладив длившееся десять лет антимонопольное дело. В 1985 году в ней работало 405 000 человек — 12 Google.
В ближайшем конкуренте IBM, Digital Equipment, владевшей половиной рынка миникомпьютеров, работало 100 000 человек. Центр информационной отрасли находился в районе Бостона и Нью-Йорка, отражая влияние правительственных заказов времен холодной войны и MIT, крупнейшего технического университета в мире, расположенного в Бостоне, штат Массачусетс. Только-только начавшееся проникновение микропроцессоров на рынок привело к бурному обсуждению "открытых систем". В течение следующих лет «открытые системы» стали главным маркетинговым слоганом, почти сравнявшись по популярности с нынешними «облаками». Открытые системы значили Unix, а Unix значил Sun Microsystems — которая стала двигателем конкуренции на новом рынке сетевых рабочих станций.
Таким был деловой рынок. Игры и крутое мультимедиа жили на мощных 16-битных микрокомпьютерах, в числе которых были занявшие ниши аудио и (позже) видео обработки линейки Commodore Amiga и Atari ST. На фоне их успехов Apple Macintosh выглядел переоцененной игрушкой. По сути дела Mac был просто еще одним микрокопьютером на базе микропроцессоров семейства Motorola 68000 — очень хорошо сконструированным — но технически уступавшим намного более сложному Amiga и слишком странным для бизнеса. Какое-то время казалось, что Mac потопит Apple, но язык Postscript, принтер Apple LaserWriter и PageMaker создали компьютерную верстку и дали Apple непоколебимую опору в издательском деле.
Еще был IBM PC. Грубый, малофункциональный, неприкольный: PC умудрился собрать в себе худшее из всех миров. В качестве делового компьютера он значительно уступал рабочим станциям Sun. И какому идиоту могла придти в голову мысль купить PC домой? Его было бессмысленно использовать в качестве мультимедийной машины, не было даже звуковых карт, ему был доступен только примитивный писк.
Но у PC были свои преимущества. Офисы и отделы крупных компаний могли покупать собственные PC или его клоны и намного быстрее, проще и дешевле начинать работу с базами данных или электронными таблицами. Альтернативой были бюрократические процедуры запросов на получение рабочего времени на мейнфрейме и написания или переделки соответствующих программ. У PC был широкий выбор разнообразного железа, так как многочисленные компании продавали клоны или «совместимые» машины и процветающий рынок дилеров, обучения и поддержки. PC означал Novell для сетей, SCO Unix (или дюжину забытых альтернатив) для вертикальной интеграции, а для всего остального — крупнейшие компании этого рынка, Lotus Corporation и Ashton Tate. У вездесущих бизнес-приложений для PC — dBase, Lotus 1-2-3, WordStar и WordPerfect — были свои «экосистемы», состоящие из обученных пользователей, макросов, расширений и даже совместимых с ними серьезных программ для составления графиков и отчетов.
Наверное вы заметили, что кое-чего не хватает. Никто не знал самой идеи «API» или экосистемы — многостороннего рынка — потому что в те времена «платформа» на PC означала само приложение. DOS не предоставлял никакого API, только позволяющие что-то поломать прерывания. В голом DOS не было ничего, способного помочь начинающему разработчику. Если вы разрабатывали новое приложение для DOS, вам приходилось самостоятельно поддерживать всю периферию. Если у пользователя был принтер HP LaserJet или навороченная видеокарта Hercules, вам надо было самостоятельно писать для них драйвера. В 1989 году WordPerfect сместил WordStar с места самого популярного текстового редактора для PC во многом благодаря отличным драйверам.
DOS был не «операционной системой», а банальным загрузчиком. В DOS была примитивная файловая система «8+3». Никакого API не было — приложения делали все что хотели и на что были способны. А еще он был однозадачным, для многозадачности надо было устанавливать хаки от сторонних фирм.
Таким образом, к середине 1980-х перед IBM стояли два вызова. Первый — отбить натиск открытых систем, укрепить репутацию PC как деловой машины и вернуть его под родительское крыло. Второй — вывести PC на современный уровень, что означало многозадачность, поддержку сетей и графический интерфейс — всем этим уже наслаждались пользователи остальных систем. IBM планировала добиться этого тремя способами — новой программной платформой, новой железной архитектурой и новой стратегией. IBM сделала новую системную шину PS/2 закрытой, надеясь продавать лицензии производителям клонов и карт расширения. Но никто не хотел их покупать. Вместо того, чтобы сделать остальной мир несовместимым с IBM и, следовательно, непривлекательным для покупателей, PS/2 сделала компьютеры IBM несовместимыми с остальными миром. PS/2 продавала только IBM и в итоге компания сдалась.
Новая стратегия была грандиозной, всеохватывающей, маркетинговой чепухой под названием Systems Application Architecture и очень IBM-мовским ответом открытым системам. SAA обещала огромный набор стандартов, объединяющих интерфейсы IBM для разработчиков, пользовательские интерфейсы и протоколы связи. Но IBM давно перестала создавать разумные стандарты. Для примера, системы IBM не использовали промышленный стандарт для кодировки текста, ASCII — они использовали собственный, под названием EBCDIC — существовавший как минимум в шести разных версиях. SAA не сделала продукты IBM «открытыми системами».
Новая операционная система для PC
Третьим направлением усилий IBM была новая операционная система для PC — OS/2. В ней крылся новый вызов для компании. Много лет программы были лишь частью «компьютера», покупаемого клиентом, продавать программы отдельно от компьютеров IBM вынудило только решение министерства юстиции от 1968 года. Большая часть программного обеспечения продолжала писаться для конкретного железа и была жестко привязана к нему. IBM никогда раньше не продавала программы на открытом и зрелом рынке, где пользователи делают выбор сами. Это были неизведанные воды, в которых скрывались крайне агрессивные существа.
Со своей многозадачностью, отточенной многопоточностью, межпроцессными полезностями вроде каналов и очередей (IPC goodies like pipes and queues), графическим интерфейсом и новой файловой системой OS/2 ни в чем не уступала конкурентам. Ядро было очень хорошо спроектировано и способно одновременно выполнять практически любые приложения. В API OS/2 также прослеживалось дальновидное планирование системы с рассчетом на многолетнее использование.
IBM вела разработку OS/2 совместно с крохотной компанией Microsoft и несмотря на множество разногласий они как-то дошли до совместного выпуска системы.
OS/2 была по-настоящему новой «платформой». Но она была непривычной для пользователей и на момент запуска не имела ни одного приложения. OS/2 было нужно то, что мы сейчас называем «экосистемой». И что же делать в таком случае?
Что такое платформа?
IBM в то время не имела никакого представления о самой идее аппаратно-независимой платформы. В прямом смысле слова она не знала того, чего не знала. Но откуда она могла узнать это? Клиенты обычно покупали то, что им советовала IBM, вопросы вставали только в отношении сроков покупки. OS/2 требовался рынок разработчиков и поддержка со стороны производителей железа, чтобы OS/2 могла работать на широком спектре видеокарт, принтеров и другой периферии. Это была классическая проблема курицы и яйца. Зачем выделять средства на покорение рынка, которого еще нет?
При всей своей технической правильности OS/2 давала крайне мало преимуществ, а ее внедрение доставляло немало головной боли корпоративным службам поддержки.
Многозадачность приходит на PC: OS/2 версии 1.0
Размер и авторитет IBM вынудили нескольких крупных разработчиков сделать версии своих DOS-программ под OS/2, Ashton Tate, например, перенесла dBase, но переезд приложений еще не означал перемещения экосистемы. Разработка драйверов была адски трудной, спустя три года было крайне сложно что-то напечатать из под OS/2. В наше время производители платформ понимают, что им необходимо поддерживать, уговаривать и даже подкупать разработчиков приложений и драйверов. Microsoft знала это, IBM нет.
Обратная совместимость OS/2 тоже не впечатляла. Изначально спроектированная 16-битной, новая система не использовала новые возможности 32-битных процессоров Intel 386 по запуску виртуальных машин DOS. «Средство совместимости с DOS» в 16-битной OS/2 было медленным и ненадежным. Без привлекательных приложений и поддержки железа единственным преимуществом OS/2 оставалась возможность использовать в приложениях более 640 килобайт памяти. Но летом 1988 года произошел скачок цен на память, сделавший необходимые для OS/2 2 мегабайта крайне дорогими. Графический интерфейс пользователя был еще более требовательным, Presentation Manager делал большинство уже имеющихся PC слишком слабыми для OS/2.
Самым разумным выходом для пользователей стали сторонние патчи для DOS, добавлявшие многозадачность и расширявшие доступную память.
Первая версия OS/2 вышла на рынок в 1987 году, с многозадачностью и текстовым интерфейсом. Версия с графическим интерфейсом вышла только через год. В ней все еще не было современной файловой системы HFS, с поддержкой разделов и больших файлов.
OS/2 провалилась
Разные идеи рабочей станции
Летом 1988 один проект изменил взаимоотношения между партнерами. DOS не могла использовать более 640 килобайт оперативной памяти, что породило процветающий рынок расширителей памяти, которые с помощью различные трюков добивались выделения большего объема. Одним из несомненных преимуществ OS/2 был механизм работы с памятью, не накладывающий никаких ограничений вплоть до 15 мегабайт. Но этим летом один из редмондовских практикантов нашел способ запустить DOS в защищенном режиме Intel 286, дав ей больше памяти.
Начальник практиканта показал его работу Стиву Баллмеру и руководство Microsoft задумалось над возможностью использования оболочки Windows в качестве расширителя памяти для DOS. PC мог загрузить DOS, запустить Windows, и постепенно заменять компоненты DOS на нижнем уровне, аналогично замене колес на движущемся автомобиле без его остановки. Заковыристый способ. Но Windows была полна подобных хаков — в техническом смысла слова это был самомодифицирующийся код.
«Оболочка плюс расширитель памяти» не имела богатых API OS/2 — и система никогда не стала бы стабильной. В ней даже не было длинных имен файлов. DOS использовала архаичную систему 8+3 (“LTTR2BOB.WPD”) десятилетней давности. Она вообще не была операционной системой. Но у нее был графический интерфейс и с помощью дыма, зеркал и изрядного количества веры со стороны пользователей ее можно было представить как новую операционную систему.
С легкой натяжкой Windows можно было рекламировать как новую «платформу». Новая платформа означала, что все существующие приложения продолжают работать и скоро к ним присоединятся новые, сияющие и прекрасные. На тот момент ни одна графическая оболочка над DOS не имела серьезного преимущества. Вероятность победы была очень велика.
У Microsoft было несколько очень серьезных преимуществ. Во-первых у нее была очень хорошая позиция для развития «экосистемы», имелись средства разработки, она могла продавать их очень дешево и умела рекламировать Windows как «новую эпоху», что-то со все нарастающим ускорением. У Microsoft не было консервативных подразделений, которые надо было умиротворять.
Во-вторых, у нее были очень хорошие взаимоотношения с производителями PC. Они платили за MS-DOS вне зависимости от того, устанавливали ли они ее на PC. Покупателям было нужно нечто способное запустить dBase и Lotus 1-2-3. Microsoft могла с легкостью добавить Windows на все эти компьютеры, а первый запуск Windows был легким и безболезненным.
В-третьих, пресса и эксперты очень желали успеха Microsoft и провала IBM. Не потому, что они очень любили Microsoft. Но клоны создали процветающий рынок и никто не хотел, чтобы IBM вновь контролировала и железо и программное обеспечение. Никто не хотел возвращаться в мир, находящийся под властью одного огромного, вертикально интегрированного гиганта. Это не было очевидно летом 1990 года, спустя три года после анонса OS/2, когда вышла Windows 3.0, первая версия с поддержкой защищенного режима. Почти вся пресса считала Windows 3.0 еще одним соперником оболочки GEM и расширителя памяти Quarterdeck.
Развод
В течение многих месяцев перед выпуском Windows 3.0 летом 1990 года Microsoft распространяла ее копии, которые судя по всему достались всем значимым в отрасли людям. Было ясно, что Microsoft видит в Windows нечто больше, нежели цветок на могиле MS-DOS и прощальное слово до-OS/2-шному миру, который остается где-то позади. Ничего подобного. Microsoft проделала массу работы по увеличению привлекательности Windows и сверхактивно рекламировала ее среди разработчиков. Это была «псевдо-платформа», не являющаяся на самом деле новой ОС, но позволяющая разработчикам использовать графический интерфейс. Сытые по горло скудными продажами продуктов для OS/2 разработчики реагировали крайне положительно. В то же самое время Microsoft была обязана продолжать демонстрации 32-битной OS/2 прессе, и там было все то, чего так не хватало 16-битной версии.
Псевдо-платформа-мутант Microsoft Windows 3.0 была запущена с большим шумом и стала хорошо продаваться. Стало ясно, что в течение 1989 года как минимум некоторые из разработчиков, изучавших OS/2 Presentation Manager, на самом деле развернулись в сторону Windows. Windows давала им массу возможностей и превращалась в шанс получить рынок, пусть даже скромный и недолговечный. Но хоть что-то было лучше чем ничего. Вскоре под Windows стало появляться все больше приложений, после чего они пошли потоком, так как крупные производители приложений затыкали дыры в своем портфолио. Всего за один месяц Microsoft продала больше копий Windows чем IBM копий OS/2 за два года.
В течение 1988 и 1989 годов IBM несколько раз пыталась убедить Microsoft закрыть Windows, но Билл Гейтс отказался. После чего глава подразделения PC в IBM Джим Каннавино (Jim Cannavino) сделал хоть и непреднамеренную, но катастрофическую ошибку. Осознавая растущий энтузиазм Microsoft в отношении Windows он не смог ни признать их правоту и дать системе какие-то шансы ни разорвать соглашение с Microsoft. В итоге Windows получила прохладное одобрение — возможность появиться на свет и пространство для роста. Не смотря на полную несовместимость API Windows позиционировали как предварительную версию OS/2. У IBM было много возможностей избавиться от Microsoft и защитить OS/2, но эта ошибка была самой разрушительной.
Это было в сентябре 1989. Самой страшной ошибкой IBM было сохранение партнерских отношений с Microsoft и отказ от попыток подавить развитие Windows. Отношения между ними быстро портились, так как Windows продавалась огромными тиражами.
Экосистемные преимущества, которыми наслаждались Ashton Tate и Lotus, начали быстро испаряться. Windows предоставляла драйвера для устройств. Новые навыки сводились к умению обращаться с Windows. Знание запутанных последовательностей нестандартных горячих клавиш больше не было преимуществом. Разработчики WordPerfect отчаянно пытались удержать позиции, перенеся горячие клавиши из DOS в первую версию под Windows, но не добились успеха.
Марш на промышленные системы
В деловой сфере Windows PC начали использовать для запуска неуклюжих приложений для конечных пользователей с формами. В мае 1991 Microsoft запустила Visual Basic — скриптовый язык с графическим интерфейсом, примитивный, но способный вызывать процедуры из скомпилированных библиотек. Windows также дала огромное преимущество подразделениям Microsoft по разработке прикладных приложений. В мире DOS доля рынка Microsoft Multiplan и Word была невелика. Но позиции их Windows-наследников, Excel и Word 2.0, были гораздо сильней. Вдобавок к этому Microsoft начала продавать комплект из своих офисных приложений с базой данных Access и программой для работы с электронной почтой заметно дешевле конкурентов. Весь «Office для Wndows» стоил дешевле чем один dBase или Lotus 1-2-3.
Два года IBM и Microsoft вели пиар-войну на истощение. IBM не смогла убить Windows и должна была избавиться от Microsoft. Неизбежный развод произошел в апреле 1991. По итоговому соглашению IBM самостоятельно занялась разработкой 32-битной версии OS/2 и получила лицензию на включение в нее кода Windows. Microsoft немедленно прекратила разработку 16-битной OS/2, хотя еще несколько лет продолжала продавать Microsoft OS/2 LAN Manager, все уменьшая размер шрифта слова OS/2 на коробке.
Пол Кэррол (Paul Carroll) в своей книге Big Blues: The Unmaking of IBM отмечает, что на момент публичного развода Microsoft продала 13 миллионов Windows 3.0 в течение года, в то время как IBM продала всего 600 000 копий OS/2 за три года — из которых настоящими продажами были всего 300 000 — реально использовалось намного меньше. На волне продаж Windows и спроса на Windows-приложения самой Microsoft компания выросла с 1800 сторудников до 10 000.
Но не смотря на все это сила была не на ее стороне. Как позже писал сам Гейтс
Когда они оборвали все связи и решили дальше работать без нас мы подумали: «Теперь мы сами по себе и это определенно очень, очень страшно.
И страшнее всего было то, в 32-битной версии OS/2 было все то, чего так не хватало 16-битной. Это была весьма впечатляющая система, просто она еще не была завершена.
Империя наносит ответный удар
Новая, 32-битная версия OS/2 полностью использовала возможности процессора Intel 386: плоскую модель памяти и способность виртуализировать сессии DOS, сохраняя связи между их процессами. 32-битная версия также поддерживала ненадежные расширители памяти DOS, давая DOS-приложениям быстрый, 32-битный доступ к памяти так, что они сами не замечали этого и запущенные в защищенных от падения виртуальных сессиях OS/2 DOS-приложения работали даже лучше, чем раньше. IBM и Microsoft в равной мере гордились этим. IBM брала Microsoft Flight Simulator, одно из самых требовательных к графике приложений для DOS — и запускала один экземпляр за другим, пока целая дюжина не начинала работать одновременно.
Внезапно OS/2 начала выглядеть намного лучше конкурентов, решая многие проблемы деловых пользователей DOS, с которыми они мучились много лет подряд. Даже Windows программы работали во множественных виртуализированных сессиях быстрее чем в DOS. В OS/2 совмещались лучшие черты всех миров: старые DOS-приложения с их обученными пользователями и дополнениями от сторонних фирм, новая волна Windows-приложений и родные приложения OS/2.
Тем не менее система задерживалась. IBM решила добавить блеска OS/2 с помощью радикально новой графической оболочки Workplace Shell. Это был не просто интерфейс пользователя, а набор обьектно-ориентированных библиотек классов, которые могли быть переопределены или расширены разработчиками. Workplace Shell добавляла в OS/2 многие возможности Mac и собственные новинки. Даже в наши дни она смотрится очень хорошо. Как это ни странно, но OS/2 становилась все популярнее среди энтузиастов, во многом благодаря потрясающим демонстрациям Дэвида Барнса (David Barnes), одного из великих демо-богов нашей отрасли. Вот Барнс во всем своем блеске в 1993 году.
Microsoft нужна была красивая история и они нашли ее. У них была новая, многопользовательская и переносимая на разные процессоры операционная система на ранней стадии разработки. Она оказалась судьбоносной. OS/2 3.0 или OS/2 NT стала одной из крупнейших пустышек (vapourware) в истории отрасли. В 1990 году в ней было лишь способное загрузиться ядро, только через три года кто-то смог купить ее и только через шесть лет она начала оказывать заметное влияние на рынок. Но она радикально изменила мнение общественности.
RISCовый бизнес и убийца Unix
В то время возможность работы на разных процессорных архитектурах казалось очень важной. Расхожая мудрость гласила, что архитектура микропроцессоров от Intel выдохлась и будущее за RISC. На рынке рабочих станций главенствовали новые RISC процессоры от MIPS и Sun (SPARC), за которыми следовали DEC (Alpha) и IBM (Power). Сложно было понять, кто из них в итоге победит.
Новая платформа-пустышка также обещала кое-что, что должны были сделать производители Unix, но не смогли: единую платформу с богатыми API. В мире Unix царила тирания мелких различий. Разработчики сражались за мельчайшие детали, не имевшие никакого значения для большинства пользователей. Они строили сложные планы и заговоры, обьединялись и расходились, выбрасывали большую часть привлекательных изменений (вроде NeWS Display Postscript UI от Sun) ради бесплодных попыток найти компромисс.
Unix должен был обьединиться, но IBM вступила в союз всех-кроме-Sun под названием OSF и возникшим вакуумом смогли воспользоваться предприимчивые маркетологи Microsoft. NT была пустышкой, но Microsoft пообещала помощь в ее переносе на MIPS, Alpha и даже IBM/Motorola PowerPC. Компания обещала, что в NT будут работать 16-битные программы OS/2 и POSIX билиотеки Unix. Microsoft так же обещала единообразный API Win32, позволяющий запускать программы и на NT и на Windows машинах на основе DOS. В 1993 году участники Unix-войн осознали угрозу и подписали единую „Spec 1170“, но это уже никого не волновало.
Несуществующая платформа позволила Microsoft удержать клиентов. Microsoft предлагала покупателям подождать 32-битную версию Windows, Chicago, которая должна была выйти в 1993 году. Она все еще базировалась на DOS, но предлагала пользователем многие преимущества OS/2 вроде длинных имен файлов — и должна была работать на 4 мегабайтах. Так же они дожны были готовиться к убийце Unix, Windows NT. NT должна была не просто убить Unix, но и со временем превратиться во всеобьемлющую, всемогущую, обьектно-ориентированную систему Cairo.
Обещания уходили за облака. IBM осознала, что у нее остался последний шанс вернуть рынок и хотя бы часть многомиллиардных затрат на разработку OS/2. Осенью 1994 была запущена изрядно оптимизированная версия OS/2 3.0 — Warp — сопровождаемая непривычной для IBM массовой рекламой по телевидению. Она поставлялась в двух вариантах — один включал Windows, другой использовал уже установленную на жесткий диск Windows. IBM гораздо раньше чем Microsoft осознала потенциал интернета — это была первая ОС, в поставку которой входил браузер. Microsoft в это время была занята амбициозным проектом тщательно огороженного сада, „убийцы Compuserve“, который должен был войти в Chicago, и даже не включила стек TCP/IP в Windows.
На короткое время OS/2 захватила воображение небольшой части покупателей, но так и не смогла изменить ситуацию на рынке — во многом потому, что из всех крупных производителей PC только сама IBM решилась продавать компьютеры с предустановленной OS/2. Служба поддержки IBM не умела работать с неподготовленными пользователями. Новых пользователей OS/2 встречал трудоемкий процесс установки, слабая поддержка железа, малое число родных приложений. OS/2 поддерживала приложения Windows так хорошо, что при отсуствии опасных конкурентов среди родных приложений OS/2 все серьезные разработчики сосредоточились на гораздо более выгодном рынке Windows.
В итоге Chicago вышла только в 1995 году под названием Windows 95 и не работала на 4 мегабайтах. NT была слишком большой и медленной для рынка, на ней не хватало офисных приложений — обещание переносимости Win 32 так и не было выполнено. NT вышла еще через год и пользователи потребовали оболочку Windows 95. К тому времени архитектура системы изменилась так сильно, что большинство обещанных особенностей так и не были реализованы. Microsoft ввела ограничения на количество сетевых соединений для рабочих станций (которые для этого могли использоваться как сервера отделов) и переместила графические драйвера в ядро, пожертвовав надежностью ради производительности. Про Cairo тихо забыли.
Последний рывок к славе
Поздним летом 1996 IBM признала свое поражение и перевела большую часть программистов на другие задачи. Она выпустила еще одну версию OS/2 в 1996, включив в нее распознавание голоса и более привычный интерфейс. Поддержка этой системы продолжалась много лет. Но война была окончена — Microsoft победила. В бессмысленности дальнейшего развития OS/2 CEO IBM Лоу Герстнера (Lou Gerstner) окончательно убедила смерть родных приложений OS/2. Частично в этом была виновата сама IBM. Знаменитая стратегия „Workplace OS“ подразумевала запуск персонализированных вариантов ОС поверх микроядра — но не смогла привлечь клиентов и так и не была доведена до конца. Больше 2000 разработчиков занимались переносимой версией OS/2, в основном рассчитанной на рабочие станции IBM с RISC процессорами, но так и не довели ее до стабильного состояния. Совместный с Apple проект объектно-ориентированной ОС Taligent окончился ничем. IBM не смогла купить Apple. Цепкая стратегия Microsoft Win32 покорила рынок.
WPS – WTF?!?
Workplace Shell впервые появилась в OS/2 версии 2.0, выпущенной в апреле 1992 — одновременно с Windows 3.1. Нет панели задач, нет каталога с программами, нет системного меню, нет меню выключения… все приложения размещаются в каталоге „Система“. Минимизированные приложения уходят в папку. В OS/2 был радикально новый интерфейс, в котором не хватало многих элементов современных UI. Откуда же он взялся?
Он родился из планов IBM о создании „офиса будущего“ — в исследовательских лабораториях придумали в буквальном смысле слова обьектно-ориентированную функциональность — вот она в печатной рекламе 1990 года, предшествующей Workplace Shell.
Над OfficeVision работало 1500 программистов, но проект так и не был завершен. Чтобы сдержать данное клиентам обещание о разработке среды для совместной работы IBM в 1996 году купила Lotus.
Такие средства автоматизации офисной работы было сложно продавать, но IBM подчеркивала их гибкость. Они были настолько гибкими, что вы могли менять шрифт и фоновое изображение у каждого окна и каждого элемента окна индивидуально. Были у Workplace Shell и более полезные возможности. Подобно Mac ярлыки (ссылки) на файлы отслеживали их перемещение. Каталоги-шаблоны могли содержать приложения и быстро клонироваться. Закрытие каталога минимизировало все приложения и документы, которые были с ним связаны. Были и другие странности. По умолчанию иконки нельзя было двигать мышью, хотя это быстро изменялось в настройках.
В последнюю версию OS/2 включили намного более привычные элементы. Системное меню давало быстрый доступ к каждому файлу, а над внешним видом иконок поработала дизайнер иконок Mac Сьюзан Кар (Susan Kare), которая также делала иконки для Windows 3.0.
OS/2 Warp 3.0 осенью 1994. Под давлением клиентов в OS/2 добавили спешно написанную панель задач.
Последний бой: OS/2 Warp 4.0 в 1996.
По каким-то причинам IBM сделала оглушительные звуки для каждого действия мышью (например перетаскивания).
Почему IBM проиграла?
Вокруг восхождения Microsoft на вершину отрасли PC до сих пор бурлят страсти. Если бы в 1987 вы сказали, что Intel и Microsoft 10 лет будут определять будущее отрасли, над вами бы просто посмеялись. Intel никак не могла создать конкурентноспособный RISC чип, а Microsoft никогда не писала операционных систем. Но у вопросов „Почему Microsoft победила?“ и „Почему IBM проиграла?“ совсем разные ответы.
IBM никогда раньше не сталкивалась с настолько предприимчивыми и безжалостными конкурентами, как Билл Гейтс. Гейтс сражался отчаянно и IBM так и не смогла от него избавится. Но вне зависимости от наличия OS/2 IBM могла бы переиграть его или даже банально задавить массой если бы разработала связную стратегию, дающую покупателям веские причины тратить деньги на IBM.
IBM могла осознать, что в 1988 году OS/2 была слишком революционной для покупателей. Она могла перехватить контроль над DOS и предложить клиентам более плавный переход в мир графических интерфейсов. На самом деле IBM именно это и пыталась сделать с проектом под названием PM for DOS — который так и не был завершен. Было уже слишком поздно. IBM могла купить Apple с самым привлекательным пользовательским интерфейсом и поставить его на прочный технологический фундамент. В качестве еще более революционного решения IBM могла осознать, в чем на самом деле заключается ценность программного обеспечения и перенести соперничество на уровень выше — создав бесплатную платформу вроде Linux.
Можно предложить много вариантов альтернативной истории — но большинство из них останутся игрой воображения. После того как Microsoft набрала силу и захватила умы разработчиков „единой платформе“ OS/2 было бы очень сложно вернуть их назад. Интереснее другой вопрос — почему Microsoft победила?
Прежде всего Microsoft безжалостно следовала требованиям рынка и заботилась лишь о количестве проданных копий Windows, ее не волновало отношение окружающих и теоретическая правильность предпринимаемых действий. Рынок не любил Microsoft, но Microsoft приносила рынку деньги. Производители программ, железа, периферии — все они зарабатывали больше с Microsoft. Программы бесили вас каждый день, но „экосистема“ в целом вглядела намного здоровей. IBM не имела ни малейшего представления о том, как строить новые экосистемы. Высокое начальство считало, что если они сделают систему и она будет хорошей (а она в конце концов стала такой), то покупатели найдутся — просто в силу магической силы трех букв IBM. Команда продаж IBM освоила много темных методов, включая использование других продуктов и услуг IBM, но они мало помогли в открытой схватке на ножах с Биллом Гейтсом.
Microsoft была полностью сосредоточена на одной задаче. Она не шла на компромиссы ради умиротворения подразделений, занятых другими продуктами. Гейтс не собирался, как многим тогда казалось, ограничиваться написанием приложений и инструментов для чужих платформ. Он хотел свою платформу. Microsoft очень хорошо поработала над Windows. Само собой огромным преимуществом Microsoft были крайне жесткие условия лицензионных соглашений. Производители PC должны были платить Microsoft за DOS вне зависимости от того, устанавливали ли они ее на компьютеры или нет — так зачем им было устанавливать альтернативы? В конце концов Microsoft проиграла антимонопольный иск и была вынуждена уступить требованиям Novell, Be и Sun. Но не забывайте, что для танго нужны двое. Частично в этом виноваты и недальновидные производители PC.
OEM-производители не стали протестовать против подобной политики Microsoft и позже это ударило по ним самим. После гибели конкурентов Microsoft подняла цены — это одно из примуществ монопольного положения. По мере падения цен на компьютеры все большая часть цены уходила Microsoft. Когда-то высокие прибыли OEM резко упали. Ни один из них не мог выделиться из общей массы, Microsoft не позволяла этого — она настаивала на единообразном „Windows experience“. Иногда для бизнеса выгодней пожертвовать текущими прибылями ради поддержания конкуренции и сохранения будущих прибылей. Многие активно занимаются этим — но не отрасль PC.
В последовавших за окончанием войны ОС разбирательствах многие поклонники OS/2 обвиняли компьютерную прессу в тотальной враждебности к этой системе. Во многом они были правы — журналистов, которые использовали и хвалили OS/2 можно пересчитать на пальцах одной руки. Одним из них был Джон Леттис (John Lettice), основатель The Register — другим ваш покорный слуга. Красивый сувенир OS/2 2.0 с иллюстрации выше все еще стоит в нашем офисе. Но пресса просто отражала общепринятые тогда мнения и экономические решения. Она тоже не хотела мира, в котором IBM определяет стандарты открытых систем.
Все были так заняты сражениями уходящей войны, что не заметили приближения новой. В 1995 году, когда война ОС все еще бушевала в Usenet (хотя всем было ясно, кто победил), Гай Кевней (Guy Kewney) так подытожил свое раздражение:
Мои друзья говорят мне, что Microsoft спасет нас от IBM. Но кто спасет нас от Microsoft?
Дополнительно на тему OS/2 — воспоминания человека, который в то время работал в IBM (если они интересны, их тоже можно перевести)
IBM insider: How I caught my wife while bug-hunting on OS/2
Where were the bullet holes on OS/2's corpse? Its head… or foot?
Альтернативный обзор истории OS/2 на Хабре с подробными описанием технических моментов