↑ 

domir.ru

ДоМир — Домашний Мир

Домашний компьютер
 

История взлёта и падения OS/2 – одной из самых интересных операционных систем

Сейчас это может показаться кому-то странным, но Windows-системы существовали не всегда. Ещё не так давно доминирование продукта Microsoft было не настолько очевидным, а на рынке операционных систем имелся один весьма и весьма перспективный продукт компании IBM под названием OS/2.

Краткая информация

OS/2 – операционная система фирмы IBM. Особой популярностью в качестве домашней ОС никогда не пользовалась, оставаясь в тени Windows. OS/2 представляет собой самостоятельную линию развития операционных систем, отличаясь от Windows NT существенно меньшей требовательностью к ресурсам компьютера, а от Linux/UNIX – принципиальной разницей в подходе к разработке и большей схожестью графического интерфейса пользователя с Windows.

OS/2 1.0 – начало

Эволюция OS/2 началась очень давно. Наиболее важным моментом предыстории OS/2 следует считать появление IBM Personal Computer или просто IBM PC (название отлично демонстрирует полное отсутствие изобретательности IBM в деле присвоения наименований выпускаемым продуктам).

MS(PC)-DOS, как и сам PC, была весьма открытой системой. Интерфейсы DOS и BIOS были хорошо документированы, и сторонние производители могли легко использовать и расширять их – вот почему DOS и по сей день используется в некоторых задачах.

Вместе с тем DOS и BIOS имели один очень большой недостаток. Они отнюдь не были «звездной командой» и, что еще хуже, – не использовали аппаратную часть PC на полную мощность. Это означало, что многие программы для полного использования аппаратных возможностей обращались к устройствам напрямую, минуя DOS.

Рассвет IBM PC

Но невзирая на все свои недостатки в 1980 году IBM PC стал популярным инструментом. Аппаратный и программный рынки росли с невиданной скоростью. Казалось бы все было прекрасно – но пользователи PC были недовольны. Основные причины тому были следущие:

Различные программы либо никак не взаимодействовали друг с другом, либо взаимодействие происходило на примитивном уровне.

Пользователь не мог делать несколько задач одновременно. Как некое подобие многозадачности были придуманы резидентные программы.

Логическим итогом всего хаоса проблем было то, что окружение DOS было нестабильным. Не было никакой защиты ни памяти, ни других ресурсов, и любой процесс мог делать что угодно с любым куском памяти или манипулировать с оборудованием – элементарный рецепт катастрофы.

Архитектура DOS имела серьезные ограничения при работе с памятью. «640 Кб будет достаточно для каждого» – выражение Билла Гейтса в 1981 году. Возможно, это и было правдой в 1981, но никак не в 1984. Естественно, как только нехватка памяти стала очевидной, были придуманы различные способы обойти «проблему 640», но все они никак не могли считаться решением.

Некоторые из существовавших проблем могли быть решены программно с помощью лучше спроектированной операционной системы. Но другие требовали аппаратной поддержки для того чтобы решение было эффективным или в принципе реализуемым. И эта поддержка была реализована в 1984 году под названием IBM AT (Advanced Technology). Помимо огромной массы различных усовершенствований самым заметным (и важным) было применение нового центрального процессора – Intel 80286. Хотя 80286 был 16разрядным, как и его прародители, однако он имел одну очень важную особенность: защищенный режим работы (protected mode). В защищенном режиме 286-й мог адресовать 16 Мб памяти. Это было очень много, учитывая, что PC с 16 Мб памяти стали стандартом де-факто лишь более чем 10 лет спустя. Но еще большим плюсом было то, что защищенный режим был действительно защищенным. Это означало, что доступ к памяти не был «свободным для всех» – вместо этого существовало 4 уровня (или кольца) защиты и менее привилегированный процесс не мог нанести повреждения блокам памяти, принадлежащим более привилегированным компонентам.

Как IBM, так и Microsoft полностью осознавали проблемы, вызываемые работой DOS в реальном режиме, и работали над их решением. Двумя наиболее заметными продуктами, которые в итоге появились, стали IBM TopView и Microsoft Windows. TopView была текстовой многозадачной оболочкой для DOS и в сущности идейным прародителем позднейшей намного более успешной оболочки DesqView производства компании Quarterdeck. Microsoft Windows являлась графическим многозадачным окружением, работавшим поверх DOS. Впервые анонсированная в 1983 версия 1.0 появилась в 1985. Она была более чем плохой и вполне заслуженно не приобрела сколько-нибудь широкой популярности.

Взросление

В это же время Microsoft работала над полностью новой операционной системой, рассчитанной заменить DOS. В январе 1983 года началась разработка новой многозадачной MS-DOS системы. Название проекта изменялось несчетное количество раз. В августе 1985 IBM присоединяется к проекту, и фирмы подписывают соглашение о совместной разработке, которое дает обеим компаниям право на продажу конечного продукта. Немного погодя проект переименовывается в CP/DOS – от Control Program/DOS. Но даже это был не финал процесса выбора имени еще нерожденного ребенка. Незадолго до выпуска продукт переименовывается в OS/2 – видимо, для соответствия новой линейке персональных компьютеров IBM под названием PS/2 (Personal System/2).

Интересно то, что OS/2 1.0 не были реализованы очень многие планируемые особенности и самым заметным было отсутствие графического интерфейса пользователя Presentation Manager (кодовое имя Winthorn).

Рисунок 1. Рабочее пространство пользователя OS/2 1.0
Рисунок 1. Рабочее пространство пользователя OS/2 1.0

И все же OS/2 1.0 являлась радикальным рывком в сторону от DOS и имела множество особенностей и возможностей, которые DOS никогда не смогла бы иметь и которые были реализованы в других операционных системах намного позже.

Одной из самых неприятных помех для разработчиков было то, что они столкнулись с необходимостью поддержки DOS. Ни одна из проблем не являлась непреодолимой, но их комбинация была убийственной. IBM и Microsoft расплачивались за непродуманные решения, принятые при разработке DOS в 1981 году. К тому же огромная популярность DOS произвела эффект бумеранга – разработчики вынуждены были поддерживать DOS приложения в OS/2, чтобы иметь хоть какие-то шансы на завоевание рынка.

В конце концов разработчики OS/2 нашли решение, как исполнять DOS в защищенном режиме, хотя в процессе поиска решения и столкнулись с огромным количеством проблем. Окончательный выход выглядел следующим образом: имелась одна-единственная полноэкранная сессия DOS, которая не могла выполняться в фоновом режиме. Реализация подобного подхода требовала частого переключения между защищенным и реальным режимами (при активной DOS задаче).

Код DOS, применяемый в OS/2, базировался на коде MS-DOS/PCDOS, но с многочисленными модификациями. Так, к примеру, код, обеспечивавший работу с файловой системой, работал только в защищенном режиме. Иными словами, при обращении к файлу вся операционная система переключалась в защищенный режим. Впрочем, впоследствии такой подход оказался большим плюсом – когда были реализованы инсталлируемые файловые системы, оказалось, что DOS сессия OS/2 не имеет никаких проблем с доступом к (например) файловой системе HPFS.

Весь же защищенный код был написан «с нуля» со всеми теми приятными особенностями, которые были описаны ранее. Ядро и системные библиотеки в основном были написаны на ассемблере по следующим двум причинам:

В новой операционной системе было особенно не на что посмотреть – интерфейс был исключительно текстовым (обещанный Presentation Manager был все еще в стадии разработки) и внешний вид весьма походил на DOS. Но после нажатия появлялся Program Selector – утилита, позволявшая запускать новые задачи и переключаться между существующими. Теоретически существовало 16 сессий, но поскольку сама OS/2 занимала часть из них, пользователь имел доступ к 12 сессиям.

С точки зрения пользователя OS/2 1.0 имела несколько существенных недостатков. Некоторые были исправлены в более поздних версиях серии 1.x, на исправление других понадобилось куда больше времени:

На рынке операционных систем OS/2 пребывала в состоянии безнадежной битвы за широкое распространение. Ее признанию мешало несколько факторов:

Резюмируя, можно сказать, что OS/2 1.0 не достигла абсолютного успеха (иначе сегодня большинство компьютеров работало бы под управлением OS/2), но и не стала оглушительным провалом. OS/2 внесла большое количество новых (и по большей части хороших) концепций в мир PC. Также OS/2 1.x выстроила солидный фундамент для OS/2 2.x, которая в свою очередь была большим шагом в истории PC. Большинство концепций, впервые появившихся в OS/2 1.x доказали свою обоснованность и не претерпели существенных изменений в последующих релизах. Программисты IBM и Microsoft, без сомнения, не заслуживают ничего, кроме уважения за проделанную работу.

OS/2 1.1 – ранние годы

Следующим релизом OS/2 стала версия 1.1. Единственной причиной, по которой версию пронумеровали не 2.0, вероятно, было то, что графический интерфейс пользователя (GUI – Graphical User Interface) был обещан в версии 1.0, но не был закончен вовремя. Как забавный факт следует отметить, что Windows 1.0 разрабатывалась как Interface Manager и приобрела новое имя благодаря менеджерам, игравшим с именами, невзирая на протесты программистов.

Presentation Manager имел кодовое имя Winthorn и практически полностью был написан в отделении IBM Hursley Labs. Программирование для PM было весьма схоже с программированием под Windows, однако имелись и отличия:

Помимо появления GUI другие изменения включали полную реализацию именованных каналов, которой не было в OS/2 1.0. Также была добавлена поддержка «больших» томов FAT (BigFAT). Теоретически поддерживались тома размерами до 2 Гб, хотя практический лимит был несколько ниже.

После запуска OS/2 1.1 встречала пользователя следующим экраном (см. рис. 2).

Рисунок 2. Долгожданный GUI
Рисунок 2. Долгожданный GUI

Достаточно странным фактом было то, что OS/2 1.1 не имела нормального текстового редактора с GUI интерфейсом – даже такого, как notepad в Windows. Вместо него было текстовое приложение E.exe, запускаемое из командной строки.

В любом случае OS/2 1.1 была технически очень интересной и занимательной программой. Она обладала намного большими возможностями, чем любая операционная система для персональных компьютеров в то время. Windows и MacOS даже в перспективе не имели того, что было в OS/2 – ни вытесняющей многозадачности, ни многопотоковости, ни виртуальной памяти.

Естественно, что системе были присущи и недостатки. Хотя и поддерживалось большинство тогдашних стандартов для вывода графики (CGA, EGA, VGA), но поддержка других была весьма слабая, если вообще существовала. Поддержка принтеров была чисто номинальная – несколько принтеров и плоттеров производства IBM и все.

Под OS/2 существовали различные приложения – в том числе такие, как Microsoft Word, Lotus 1-2-3 и QuattroPro. Однако все они были текстовыми, за исключением Microsoft Excel 2.2.

OS/2 1.2 – развитие

В конце 1999 Microsoft и IBM выпускают версию OS/2 1.2 – очень важное событие во всей истории OS/2, поскольку именно в версии 1.2 были реализованы практически все возможности, обещанные в OS/2 еще до ее появления. В OS/2 1.2 разработчики наконец отказались от файловой системы FAT и реализовали инсталлируемые файловые системы (Installable File System, IFS) и высокопроизводительную файловую систему HPFS (High Perfomance File System).

HPFS была разработана «с нуля» Гордоном Литвином (Gordon Letwin) – ведущим разработчиком OS/2 в Microsoft. Новая файловая система весьма превосходила FAT, а также снимала множество ограничений:

Существовало две версии HPFS – «чистая» HPFS и HPFS386. Последняя, используемая в Microsoft LAN Manager (и IBM LAN Server), была более производительной, допускала значительно увеличенные размеры кэша и имела несколько расширений необходимых для серверов – к примеру встроенную систему разграничения доступа (Access Control List, ACL) и систему ограничения директорий. В общем, судьба HPFS оказалась весьма успешной – она практически в неизменном виде перешла в OS/2 2.0 и с некоторыми вариациями была использована в Windows NT под именем NTFS. Подобная история произошла с файловой системой UFS операционной среды SunOS 4.x. После революционного перехода на полностью новую ветку UNIX фирма Sun, имея богатый положительный опыт, без больших изменений оставила UFS в своей новой ОС. Это наглядный пример того, что удачные решения предшественников остаются в силе.

OS/2 GUI также получил новый внешний вид, весьма схожий с вышедшей через несколько месяцев Windows 3.0 (см. рис. 3).

Рисунок 3. Единообразие интерфейса OS/2 & Win3.0
Рисунок 3. Единообразие интерфейса OS/2 & Win3.0

Наиболее значимым различием между OS/2 1.2 и Windows 3.0 было то, что Windows не была операционной системой как таковой и исполнялась поверх MS-DOS (и даже могла быть запущена в DOS сессии OS/2). Также Windows содержала больше различных приложений (по большей части бесполезных, ну может быть за исключением Solitaire). OS/2 была более бизнес-ориентированной и при сравнении имела несколько спартанский вид. Отчасти это послужило тому, что Windows получила большее распространение среди конечных пользователей.

OS/2 1.3 – последняя из 16-битных ОС

После исторического разрыва совместной разработки OS/2, вызванного нежеланием Microsoft делить прибыль от продаж операционной системы с IBM, основной процесс по модернизации OS/2 происходил в IBM (хотя Microsoft и полностью сконцентрировалась на Windows, некоторые вынужденные изменения в систему все же вносились). Версия 1.3 была практически идентична 1.2 по предоставляемым возможностям, но включала многочисленные улучшения производительности и удобства использования.

Наконец во всех редакциях OS/2 присутствовал язык программирования REXX, разработанный Майком Коулишоу (Mike Cowlishow) из IBM UK.

Язык изначально создавался для достижения четырех главных целей:

И все эти задачи были успешно решены. Таким образом операционная система получила мощный и гибкий инструмент, сравнимый с различными языками написания скриптов в UNIX-подобных системах. Это несомненно являлось очень большим преимуществом, особенно в сравнении с более чем скромным набором возможностей, которые предлагались при написании пакетных файлов в DOS и ранних версиях OS/2.

OS/2 2.0 – 32-битная революция

Пока в 1988 году IBM и Microsoft усердно трудились над OS/2 1.2, в IBM началась разработка кардинально переработанной операционной системы. Итак, хотя версию 1.3 IBM совершенствовала исключительно своими силами, в то же время под руководством ведущего разработчика Майкла Когана (Michael S. Kogan) уже полным ходом шли работы над версией 2.0. В марте 1992 операционная система была полностью готова и выпущена на рынок под названием OS/2 2.0 GA (General Availability – публично доступная). Приставка GA появилась не случайно. В это время шли яростные «словесные войны» между IBM и Microsoft и в одной из перепалок вице-президент Microsoft Стив Балмер пообещал публично съесть флоппи-диск, если IBM умудрится выпустить OS/2 2.0 до конца 1991 года. Поскольку зрелище обещало быть достаточно интересным, в ноябре 1991 была выпущена ограниченным тиражом OS/2 2.0 LA (Limited Availability – ограниченно доступная). К сожалению, господин Балмер не сдержал своего слова, и OS/2 2.0 LA пришлось использовать как простую бета-версию, каковой она в сущности и являлась.

Самым большим плюсом в OS/2 2.0 была сама система. Переход на 32-разрядную архитектуру снял множество ограничений, существовавших в DOS и OS/2 1.x – в первую очередь по работе с памятью. Вместе с тем система не была «полностью» 32-разрядной – многие части оставались 16-разрядными – в первую очередь по соображениям совместимости и экономии времени. Для ускорения разработки, к примеру, драйвера графической подсистемы (драйвера видеокарт и принтеров для Presentation Manager) в OS/2 2.0 были 16-разрядными и были заменены 32-битными версиями только в OS/2 2.1. Требованиями совместимости диктовалось использование 16-разрядных драйверов физических устройств (Physical Device Driver, PDD) совместимых с OS/2 1.3. Аналогичным образом многие фрагменты ядра были 16-битными для обеспечения поддержки приложений, написанных для OS/2 1.x. Основные же элементы системы были полностью новыми и 32-разрядными – к примеру поддержка множества виртуальных DOS-машин (Multuply Virtual DOS Machine, MVDM) и менеджер памяти с поддержкой пейджинга. Более того, основная часть кода была написана на C, а не на ассемблере, как в OS/2 1.x.

Вторым существенным моментом стал новый интерфейс пользователя под названием Workplace Shell (или WPS для краткости), являвшийся радикальным уходом от концепций, заложенных в GUI OS/1.x и Windows (см. рис. 4). Новый интерфейс был объектно-ориентированным и в нем все стало объектом – диск, принтер, программа и так далее. Манипуляции с объектами проводились с помощью drag-n-drop – перемещение, копирование, печать и уничтожение. В WPS широко использовалась правая кнопка мыши – для открытия контекстных меню и выполнения операций по перетаскиванию объектов.

Для операционной системы OS/2 2.0 была зарегистрирована торговая марка «Интегрирующая платформа» (The Integrating Platform). Это название напрямую намекало на уникальную возможность OS/2 2.0 исполнять существующие DOS, Windows и OS/2 1.x приложения одновременно с новыми 32-разрядными родными приложениями. В отличие от OS/2 1.x в версии 2.0 поддержка DOS была превосходной. Система полностью использовала появившийся в 386 и последующих процессорах виртуальный 8086-режим (Virtual 8086 mode). Злые языки компьютерного мира одно время утверждали, что этот режим был реализован в 386-м процессоре шокированными инженерами Intel – слухи о мучениях при программировании поддержки в OS/2 1.x действительно распространились весьма широко, и облегчение страданий программистов на аппаратном уровне было поистине обычным состраданием. Кроме того, что пользователь теперь мог запускать не только несколько полноэкранных и оконных сессий DOS, появилась возможность создавать «специальные» DOS-сессии, в которых использовалась не встроенная поддержка DOS, а предоставлялась возможность запустить DOS 4.0, DOS 5.0, DRDOS и так далее.

Рисунок 4. Workplace Shell OS/2 2.0
Рисунок 4. Workplace Shell OS/2 2.0

Поддержка Windows-приложений логическим образом вытекала из поддержки DOS. Полноэкранная Win-OS/2 сессия просто исполняла Windows 3.0 в рамках виртуальной DOS-машины. Оконные сессии Win-OS/2 требовали более нетривиального подхода в связи с тем, что им было необходимо взаимодействовать с PM/WPS-приложениями. Выход из ситуации был реализован написанием специальной версии экранного драйвера для Win-OS/2. Такой подход, хотя и обеспечил хорошую производительность, но имел существенный недостаток – это сделало процесс написания драйверов видеокарт для OS/2 намного более сложным и дорогим занятием и было одной из причин малого количества драйверов для OS/2. Производителю приходилось помимо создания видеодрайвера для OS/2 дополнительно предоставлять специфическую OS/2 версию драйвера для Windows. Более логичным было бы написание «транслирующего» драйвера, преобразовывавшего вызовы функций Win-OS/2 в вызовы PM – тогда от производителя требовалось бы написание только OS/2 версии видеодрайвера.

На первых порах OS/2 2.0 столкнулась с той же проблемой, что и OS/2 1.x до нее – недостатком родных приложений. Система прекрасно справлялась с запуском DOS, Windows и OS/2 1.x-приложений, но на первых порах ощущалась нехватка родных 32-разрядных программ.

OS/2 2.1, 2.11, 2.11 SMP – надежная платформа, эпоха зрелости

Выпуск версии OS/2 2.1 в мае 1993 года явился следствием эволюционного развития версии 2.0. Внешний вид не претерпел существенных изменений, разработчики продолжали трудиться над «внутренностями» системы. Из видимых конечному пользователю изменений стоит отметить смену версии Win-OS/2 с 3.0 на 3.1 и появление нового компонента под названием Multimedia Presentation Manager/2 (MMPM/2), добавившего в графический интерфейс пользователя различные мультимедийные возможности – звуковые схемы, воспроизведение мультимедийных файлов и тому подобное.

В ноябре 1993 выходит специальная версия OS/2 for Windows, не содержащая кода Win-OS/2, а использующая уже установленную на компьютере копию Windows 3.x. Таким образом снижалась цена конечного продукта (IBM платила лицензионные отчисления Microsoft за использование кода Windows в Win-OS/2). Вместе с тем эта версия продемонстрировала ситуацию на рынке. Используя свое монопольное положение, Microsoft с помощью манипуляций в сфере ценовой политики держала производителей клонов PC под жестким контролем, запрещая им предустанавливать на продаваемые компьютеры операционные системы, отличные от DOS/Windows собственного производства. Позже такая политика была признана незаконной, но OS/2 это уже не помогло. Выпустив OS/2 for Windows, фирма IBM пыталась разрешить проблему без нарушения OEM-соглашений производителей компьютеров с Microsoft.

Несмотря на жесткий прессинг со стороны Microsoft времена OS/2 2.1 и 2.11 были отмечены ростом количества приложений, написанных специально для OS/2. IBM достигла соглашения с несколькими крупными производителями программного обеспечения о разработке OS/2 версий их приложений. В число таких компаний входили Borland, Lotus, Novell и тогда еще самостоятельная WordPerfect. IBM в некоторых случаях даже субсидировала отдельные разработки. В то же время Microsoft проявляла не меньшую активность, однако не заключая договора или оплачивая разработку, а, напротив, шантажируя разработчиков ПО угрозами закрыть доступ к бета-версиям и информации о Windows, если они будут разрабатывать свои продукты под отличные от Windows платформы.

OS/2 Warp – золотая эра

В октябре 1994 выходит OS/2 Warp – самая популярная и самая распространенная версия OS/2. Внутренне система незначительно отличалась от OS/2 2.11 за исключением расширенной поддержки оборудования и исправления ошибок – хороший пример того, что грамотно спроектированный и продуманный продукт не нуждается в лихорадочном переписывании многих элементов кода. Наиболее серьезные изменения касались исключительно улучшения простоты использования конечным пользователем (рис. 5).

Рисунок 5. Развитие GUI-интерфейса без отрыва от удобства использования
Рисунок 5. Развитие GUI-интерфейса без отрыва от удобства использования

Новые изменения и улучшения включали в себя:

Рисунок 6. Первые шаги к рабочей станции с доступом в Интернет
Рисунок 6. Первые шаги к рабочей станции с доступом в Интернет

Задолго до того, как в Microsoft уяснили важность «информационной супермагистрали», IBM предоставила в распоряжение пользователей полный и мощный набор инструментов для работы во всемирной сети. Сперва отдельно, а с версии OS/2 Warp Connect в комплекте с операционной системой.

OS/2 Warp и OS/2 Warp Connect была самой серьезной и удачной попыткой IBM победить в битве за доминацию на десктопе или по крайней мере в завоевании существенной части. По некоторым оценкам, OS/2 смогла захватить 10% десктоп рынка – это был фантастический результат в условиях тотальной “осады” со стороны Microsoft. Успех обусловился несколькими факторами:

Конечно, любая вещь имеет свои достоинства и недостатки, и OS/2 была не лишена минусов:

OS/2 Warp 4.0 – пик развития, начало заката

Сентябрь 1996 года ознаменовался выходом OS/2 Warp 4.0 (чаще других версий OS/2, именуемый своим кодовым именем Merlin). Новые изменения и улучшения превратили Merlin в самого выдающегося представителя операционных систем семейства OS/2 (см. рис. 7).

Рисунок 7. Лучший и, увы, последний интерфейс OS/2
Рисунок 7. Лучший и, увы, последний интерфейс OS/2

Дальнейшие версии OS/2 фактически отличались от Merlin лишь включением в поставку различных дополнительных продуктов, добавлением особенностей наподобие новых файловых систем и исправлением ошибок.

OS/2 for PowerPC – фатальная цепь ошибок

В рамках истории OS/2 отдельного упоминания, несомненно, заслуживает история OS/2 for PowerPC. Помимо прямого отношения к OS/2 она сама по себе достаточно поучительна.

У OS/2 была тяжелая жизнь, как вне, так даже и внутри IBM. Широко известны события времен выхода Windows 95, когда Microsoft оказывала невероятное давление на IBM PC Company (производившей компьютеры IBM PC), до последнего момента отказываясь подписывать договор по лицензированию на предустановку Windows 95 и в последний момент запросив за лицензию намного более высокую цену по сравнению с ценами для других производителей. Помимо неприятностей для IBM PC Company в сторону подразделения, работавшего над OS/2, бросались достаточно двусмысленные взгляды.

Трудно сказать, когда начался проект OS/2 for PowerPC, однако известно, что в самом начале девяностых IBM решила, что было бы очень неплохо иметь собственную десктоп-ориентированную операционную систему. Ее планировали как базирующуюся на микроядре объектно-ориентированную супер ОС, работающую на RISC-платформе (неплохая коллекция непонятных слов). Платформа должна была позволять запускать сразу несколько операционных систем одновременно. Сейчас уже никто не скажет, какие это должны были быть операционные системы, но в их число должны были входить OS/2, Windows NT, Solaris и MacOS. Зачем кому-либо могло понадобиться запускать весь этот зоопарк на одной машине в одно и то же время – один из вопросов, на который IBM так никогда внятно и не дала ответа, и судя, по всему, никто в IBM даже не задумавался, зачем это нужно. Очевидно, ответ «потому что мы можем!» не был самым корректным вариантом.

В любом случае цели, задачи и названия проекта постоянно менялись, в итоге завершившись проектом OS/2 for PowerPC, назвавшимся в финальной стадии OS/2 Warp Connect, PowerPC Edition. IBM активно рекламировала продукт все время на протяжении между 1993 и 1995 годами. Было написано немыслимое количество статей и даже выпущены бета-версии набора разработчика под названием PowerPC SDK. Среди производителей ПО распространялись средства для переноса приложений из обычной OS/2 на новую платформу (скорее всего, сам перенос не был трудоемким, поскольку OS/2 2.0 изначально разрабатывалась с оглядкой на переносимость). С приближением выхода OS/2 for PowerPC рекламный шум постепенно начал утихать. И в тот момент, когда новая инкарнация OS/2 должна была вот-вот появиться на прилавках, IBM внезапно умолкла. На самом деле продукт был выпущен, и отдельные счастливчики даже смогли не только подержать его в руках, но и установить. Однако только клиенты, имевшие специальные контракты с IBM, могли купить OS/2 for PowerPC.

Причин краха OS/2 for PowerPC было множество – одни лежали вне IBM, но другие были полностью внутренними:

Итогом стала потеря миллионов долларов, вложенных в разработку (хотя некоторые технологии OS/2 for PowerPC впоследствии были внедрены в OS/2 Warp 4). Можно только предполагать, что бы произошло, если бы все усилия и деньги были направлены на поддержку Intel версии OS/2.

Заключение

Жизненный путь OS/2 является одной из самых ярких демонстраций того, как любая хорошо задуманная и реализованная с технической стороны идея может быть загублена страстью к большим деньгам и плохим менеджментом. Проект, который очень часто находился на шаг, а то и два впереди своих конкурентов и аналогов по нововведениям и архитектурным решениям, поглотивший огромное количество денег и человеческого труда, был фактически задушен в ходе конкуретной борьбы за большую, чем просто огромная прибыль. В наше время история OS/2, видимо, подходит к концу на самом деле (хотя и раньше OS/2 «хоронили» несчетное число раз). IBM прекратила поддержку последних версий OS/2 в конце 2004 года, Serenity Systems, купившая права на OS/2, не обладает достаточной «пробивной» мощью для хотя бы сколько-нибудь заметных продвижений продукта. Но прекращение жизни OS/2 нисколько не умаляет всех тех последствий, которые возникли благодаря ей:

Самый же неожиданный и непредсказуемый эффект возник после появления на рынке абсолютно необычного игрока, значительно отличавшегося от всех ранее выходивших на сцену High-Tech театра актеров. Этим игроком оказалась UNIX-подобная операционная система Linux, разработку которой в 1991 году в одиночку начал финский студент Линус Торвальдс. Пока монополии тратили время и деньги в схватке за доминирование на рынке, один человек, на полную мощность используя философию открытых исходных кодов сумел сплотить вокруг разработки Linux множество профессионалов со всего мира.

Итогом стало невероятное по своей скорости развитие любительского проекта и превращение его в мощнейший инструмент. Сперва IBM, что называется, «замочила ноги», внедрив под влиянием многих факторов поддержку на своих системах другого проекта с открытым исходным кодом – Apache (самого распространенного в Интернете веб-сервера). Решение помимо ощутимой прибыли показало преимущества открытого обмена идеями и опытом между программистами всего мира.

И пока IBM находилась в состоянии неопределенности относительно судьбы OS/2 и исключительно по инерции продолжала ее разработку, Linux сперва медленно, а потом со все возрастающими оборотами начал штурмовать рынок, причем делая это без какой-либо координации сразу в нескольких направлениях (сервера, встроенные системы, десктоп системы, среды распределенных вычислений, портативные устройства и т. д.), уверенно добиваясь успеха на каждом из них. В этой ситуации IBM, учитывая преподнесенные OS/2 уроки и положительный опыт работы с Apache, столкнулась с фактом, что совсем рядом есть нечто, для чего создавалась OS/2 (и даже больше). Linux не тащила за собой груза лицензионных и политических проблем – ее можно было просто взять и использовать. При этом совершенно спокойно адаптировать для любых требуемых целей. (Применение OS/2 в банкоматах выглядело просто бледным подобием той широты и размаха, которые предоставлялись гибкой ОС с эмблемой в виде довольного пингвина).

И в IBM приняли решение сделать Linux одной из «стратегических ракет-носителей» бизнеса IBM. Конечно, не последнюю роль сыграло то, что подобный шаг лишал Microsoft значительных средств в виде отчислений IBM в пользу Microsoft. Насолить бывшему другу, который оказался не совсем честным человеком, – вполне человеческая реакция, и было бы удивительно, если бы в IBM не испытывали искушения отыграться за былые проигрыши. Как бы то ни было, сослужив не последнюю службу в деле выбора Linux базой для решений IBM, применяемых в бизнесе, OS/2 тем самым невольно забила последний гвоздь в крышку собственного гроба – стало окончательно ясно, что конец жизни OS/2 близок. Новое решение предоставляло огромную гибкость, и в этой ситуации OS/2 оказалась «не удел» сохраняя за собой существующие узкие сферы применения и готовясь к окончательной сдаче позиций.

P.S. Эта статья, хотя и выходит от моего имени, на самом деле является давно подаренным мне материалом от персонажа, известного на русскоязычных форумах как Soul Eraser.

Приложение

История

1981. Microsoft покупает 86-DOS у компании Seattle Computer Products. Удовлетворение запросов IBM к операционной системе для PC привело к некоторым изменениям, после чего она и выпущена под торговой маркой MS-DOS.

1984. Появляется процессор Intel 80286. В IBM принимается решение, что операционная система DOS морально устарела, и совместно с Microsoft начинает разработку OS/2.

Декабрь 1987. Появилась OS/2 1.0 (кодовое название CP/DOS). Эта версия не имела графической оболочки (работала только в текстовом режиме) и имела достаточные улучшения относительно DOS, например, там была расширена поддержка оперативной памяти. Выводить информацию на экран могла только одна программа, хотя другие программы могли выполняться в фоновом режиме.

Ноябрь 1988. OS/2 1.0 Extended Edition и OS/2 1.1 Standard Edition. Версия OS/2 1.1 SE (кодовое название Trimaran) обладает графической оболочкой Presentation Manager. Требования к оперативной памяти – минимум 3, а лучше 6 Мб. Версия под названием OS/2 1.10 Extended Edition (OS/2 1.10 EE), появившаяся позднее и стоящая 795 долларов, включала также Database Manager и Communications Manager.

Октябрь 1989. OS/2 1.20 SE и EE (кодовое название Sloop). Впервые предложена улучшенная файловая система HPFS. Появилось средство двойной загрузки Dual Boot, а в расширенной версии 1.2 – мощный язык REXX. Этот год является переломным моментом в истории OS/2 – альянс начинает разваливаться (в основном из-за «подковерных игр» менеджеров Microsoft). Microsoft, обеспокоенная завоеванием рынка операционных систем, берет на себя разработку следующей, полностью 32-разрядной OS/2 3.0. IBM концентрируется на разработке OS/2 2.0. Это, по сути, «развод» – разрабатываемая фирмой Microsoft OS/2 3.0 даже не сохраняет своего названия и демонстрируется на выставке ComDex’91 под именем Windows NT – первая Windows с вытесняющей многозадачностью.

Декабрь 1990. OS/2 1.3 (кодовое название Cutter) – версия, работающая на процессоре 80286 и последняя, выходящая в двух вариантах стандартной и расширенной редакции (Язык REXX присутствует уже в обеих редакциях). Из новшеств – поддержка масштабируемых шрифтов Adobe Type Manager. Эта версия также в ряду последних, продаваемых фирмой Microsoft. Все новые изменения внесены в подавляющем большинстве программистами IBM, система претерпела существенную переработку и ощутимо улучшилась ее производительность.

Апрель 1992. OS/2 2.0 (кодовое название Cruiser). Первая 32-разрядная версия OS/2. Минимальные требования – процессор 80386SX, 4 Мб оперативной памяти. Поддержка SAA (System Application Architecture) – унифицированной архитектуры прикладных программ. OS/2 2.0 – первая версия, официально поддерживаемая не только на компьютерах IBM, но и на компьютерах других фирм. Она претерпела большие реконструкции после разрыва партнерских отношений с Microsoft по разработке. Появился удобный объектноориентированный интерфейс WorkPlaceShell («рабочий стол», рабочее место) базирующийся на архитектуре SOM (System Object Model), появилось гибкое средство загрузки Boot Manager, серьезно усовершенствована поддержка DOS и Windows приложений (Windows приложения запускаются с использованием Win-OS/2), а также 32-разрядный программный интерфейс. Появилась и возможность использования более 16 Мб оперативной памяти. Отдельно выходят обновления для средств мультимедиа.

Май 1993. OS/2 2.1 (кодовое название Borg). Добавлена поддержка приложений Windows 3.1 (до этого поддерживалась Windows 3.0). В поставку включены средства мультимедиа и значительно обновлен список поддерживаемых аппаратных устройств. Требования к оперативной памяти – минимум 8 Мб.

Ноябрь 1993. OS/2 for Windows (кодовое название Ferengi). Отсутствует Win-OS/2 – вместо нее используется уже ранее установленная пользователем Windows 3.1, обновлены драйвера.

Февраль 1994. OS/2 2.11. В основным исправлены различные ошибки. Также существует отдельным набором исправлений FixPack XR 06200 для OS/2 2.1.

Июль 1994. OS/2 2.11 SMP. В этой версии была добавлена поддержка многопроцессорных (до 16 процессоров) систем.

Октябрь 1994. OS/2 Warp 3.0 (кодовое название Warp). Изменения коснулись лишь улучшения производительности системы, понижения требования к оперативной памяти до 4 Мб. Расширен спектр поддерживаемых аппаратных устройств. В GUI появился новый элемент – LaunchPad (Панель инструментов, «стартовая площадка») – эффективное и гибкое средство, отлично вписавшееся в объектноориентированную модель интерфейса. С OS/2 Warp 3.0 поставляется бесплатный пакет «BonusPak», включающий:

Май 1995. OS/2 Warp Connect. В базовую систему включена полная поддержка сетевой функциональности, поддержка одноранговых сетей.

Сентябрь 1996. OS/2 Warp 4.0 (кодовое название Merlin). В этой версии включено полное управление голосом, средства голосового ввода текста, встроенные механизмы Java, OpenDoc, средства работы в глобальной сети Интернет и другие передовые технологии, разработанные корпорацией IBM. Сильно изменен дизайн системы и более удачно (относительно предыдущих версий) проработана сетевая подсистема.

1999. OS/2 WarpServer for e-Business (кодовое название Aurora) – сокращенно OS/2 WSeB. Внешне OS/2 осталась практически без изменений, однако внутренние переработки носили весомый характер. Появилась поддержка журналируемой файловой системы JFS, взятой из AIX (IBM версия UNIX), сняты ограничения на объем виртуальной памяти, появилась мощная программа для управления томами под названием LVM (Logic Volume Manager).

Весной 2000-го американская компания Serenity Systems объявляет о том, что ею достигнуто партнерское соглашение с IBM о выпуске новой клиентской версии OS/2. Правда, эта клиентская версия полностью меняет свое название – новый клиент называется eComStation (сокращенно eCS). Официально продажи eCS 1.0 начались в июле 2001 года. По сути, это новая модификация OS/2, в которой изменен интерфейс за счет включения в базовую систему приложения Styler/2 а также процесс инсталляции. Добавлено новое средство распределенной инсталляции ПО под названием WiseMachine.

АЛЕКСЕЙ КОРШУНОВ

Источник

На Оглавление раздела >>
 
Быстрые ссылки >>
***
***
ПОГАДАЕМ НА КАРТАХ
***
СЛУЧАЙНЫЙ АНЕКДОТ
***
ПОГАДАЕМ НА КНИГЕ
***