Сложность освоения Windows (вы помните тот день, когда создали свою первую программу под Windows, - пол сотни витиеватых строк кода на Си с гордостью выводили на экран «Привет, Мир!») отталкивала программистов, не видящих никакого резона переходить с привычной малютки MS-DOS на прожорливые окошки.
Оказалось, не так сложно разработать операционную систему [132], как склонить пользователей и программистов к ее использованию. Тем более, возможности MS-DOS всех вполне устраивали, и менять «шило» на «мыло» никому не хотелось. Поэтому, корпорация Microsoft, разочарованная результатами поддержки сторонних компаний, начала активно действовать самостоятельно.
Врезка «замечание»
Здесь нужно отметить вторую важную черту стиля работы Microsoft: помимо свойственной ей склонности к рискованным ходам, она готова настойчиво вести многолетние проекты, успех которых сначала не очень очевиден и достигается тем не менее, несмотря на период порой весьма серьезных неудач. Успех пришел к Windows только в начале 90-х годов с появлением версии 3.1 - именно тогда начался массовый переход пользователей ПК с MS-DOS на Windows.
Андрей Колесов «Время Windows NT закончилось, забудьте! Новые технологии становятся стандартными»
Важным шагом в продвижении Windows стала передача инструментария для разработок приложений под Windows независимым продавцам программного обеспечения. Это был первый опыт Microsoft в составлении документации подобного рода. Результат получился не то, чтобы совсем уж плох, но требовал огромных усилий для изучения, и не вызвал интереса разработчиков. Осваивали Windows лишь немногочисленные одержимые программисты, - те, кому она пришлась по душе. «Груда вываленных на стол бумаги и дискет было начальной версией пакета Microsoft Windows Software Development Kit (SDK) вместе с компилятором С. Автор забрал эту груду домой, инсталлировал SDK и, почти после шести месяцев непрерывных неудач, стал программистом для Windows. Во время этого эксперимента с обучением и борьбы с документацией, ему не раз приходила в голову мысль о том, что он мог бы объяснить содержимое этого пакета гораздо лучше, чем это делает Microsoft» - вспоминал Ч. Петзолд.
Тем временем, в аппаратном оснащении персональных компьютеров произошли серьезные изменения. Коронация IBM представила свою новую разработку - модель PC AT, оснащенную емким жестким диском, увеличенным объемом оперативной памяти и главное быстродействующим микропроцессором Intel 80286. С точки зрения пользователя чип Intel 80286 работал, по крайней мере, в три раза быстрее, чем Intel 8086, но для программистов это событие означало нечто большее очередного увеличения производительности. Новый микропроцессор включал в себя возможности, ранее доступные лишь большим машинам! Среди них - поддержка многозадачности, виртуальная память, защита страниц… Появилась возможность создать для PC многозадачную, защищенную операционную систему.
Врезка «замечание»
[133]
Идеальный ПК - 1986
Процессор: Intel 80286/10 МГц
ОЗУ: 640 Кбайт
Внешняя память: накопитель на 1,2-Мбайт 5,25" гибких дисках,
20-Мбайт жесткий диск
Монитор: 14" цветной CGA
ОС: MS-DOS 3.2
Цена: 3995 долл.
Но в MS-DOS многозадачность принципиально не предусматривалась, и внедрить ее без потери совместимости с существующим программным обеспечением было невозможно. Поэтому, Microsoft приобрела у корпорации AT amp;T лицензию на оригинальные коды UNIX и перенесла их на PC, попутно исправив значительные количество ошибок и внося мелкие «косметические» усовершенствования. Новая система получила название XENIX, и стала первым клоном UNIX, работающим на IBM PC [134]. Но своего потребителя она так и не нашла - те, кто работали с UNIX, пренебрежительно относились к PC, а те работал с PC, зачастую ничего не смысли в UNIX и уже привыкли к «операционной системе» MS-DOS. Вскоре система XENIX была забыта, так и не оказавшись востребованной, и вышло, что труд программистов был потрачен впустую. (К слову сказать, Microsoft совместно с молодой компанией Santa Cruz все-таки выпустила XENIX 2.0, - но чуда не произошло, и она разделила печальную участь своей предшественницы).
Потерпев неудачу с XENIX, Microsoft возвратилась к совершенствованию MS-DOS, и в августе 1984 выпустила третью по счету версию. С точки зрения пользователя никаких революционных изменений она не претерпела, и основные отличия заключались в поддержке новых емких гибких и жестких дисков. Но на самом же деле, многие фрагменты ядра были полностью переписаны, от чего производительность системы ощутимо повысилась [135].
Компьютер IBM AT, с предустановленной операционной системой MS-DOS 3.0 (MS-DOS 3.1) вызвал огромный интерес покупателей и быстро вытеснил устаревшие машины XT. Но новая версия MS-DOS так и осталась однозадачной средой, а увеличившаяся мощность компьютеров и возросшее количество программного обеспечения, создавали потребность в многозадачности.
Компьютерный мир оказался в затруднительном положении. Перспектива перехода на UNIX (XENIX) никого не прельщала, - сложность этой системы отпугивала пользователей, не желающих расставаться со своими любимыми приложениями, которых ни для UNIX, ни для псевдомногозадачной оболочки Windows еще не существовало, а разработчики заняться переносом даже и не обещали.
Был необходим «волшебный» способ «привить» к MS-DOS многозадачность без потери совместимости с существующими приложениями. Но у компании Microsoft еще не было ни опыта программирования под защищенный режим процессора Intel 80286, ни навыков проектирования многозадачных систем. Поэтому, воспользовавшись этой заминкой, корпорация IBM выбросила на рынок свой продукт TopView, эдакое расширение к MS-DOS, которое позволяло одновременно запускать несколько приложений и переключаться между ними. Допускался вывод в несколько окон, уродливо нарисованных в текстовом режиме, а к используемым приложениям предъявлялись жесткие требования: программы, взаимодействующие с аппаратурой в обход DOS и BIOS, приводили к некорректной работе TopView. А программисты восьмидесятых, скованные аппаратными ресурсами, редко использовали вызовы тормозного BIOS и все критические ко времени операции выполняли, обращаясь непосредственно к портам ввода-вывода.
Обещания IBM сделать TopView полностью графическим и решить проблемы с «непослушным» программным обеспечением так никогда и не были выполнены, но, несмотря на это, TopView нашел своего пользователя и всерьез считался перспективной средой с богатым будущим.
Журнал PC Magazine, посвященный TopView-у
Но неожиданно для всех фирма Quaterdeck выбросила на рынок пакет DESQview, обогащающий MS-DOS многозадачным режимом. Фактически DESQview представлял собой подлинную операционную систему со своим собственным подмножеством системных вызовов, и значительно превосходил TopView, даже ухитрялся наладить контакт с некоторыми «непослушными» приложениями.
Продукт имел успех, и хотя не известно ни одного приложения, созданного именно для DESQview (а ведь DESQview предлагал программистам множество функций, как и подобает настоящей операционной системе), он активно устанавливался пользователями, которые нуждались в многозадачности, что серьезно препятствовал продвижению Windows на рынок.
Тем временем, все больше и больше корпоративных компьютеров соединялись кусками кабеля, гордо именуемым «локальной сетью». Спрос рождал предложение и фирма Novell, воспользовавшись заминкой Microsoft, представила свою знаменитую сетевую операционную систему, прочно удерживающуюся на рынке вплоть до наших дней.