Windows - статьи

Разработка NT


В августе 1988, Билл Гейтс нанял Катлера. Одним из условий Дэвида при переходе в MS было то, что с собой он возьмет 20 инженеров из Digital, работавших с ним, включая нескольких инженеров проекта Prism. Microsoft с готовностью встретила это требование, компания знала, что наем архитектора ОС такого уровня как Катлер станет удачным ходом, к тому же у немногих инженеров был такой послужной список. Гейтс чувствовал, что долгосрочное будущее Microsoft зависело от развития новой ОС, которая будет конкурировать с UNIX. Летом 1988 года мне позвонил Билл Гейтс из корпорации Microsoft с интересным предложением. Он спрашивал, не соберусь ли я приехать и поговорить о создании новой ОС Microsoft для персональных компьютеров. В то время меня не очень интересовала работа с персональными компьютерами, но я подумал, что это очень хорошая возможность встретиться с Биллом и обсудить его идеи. То, что предлагал Билл, сводилось к созданию новой ОС – переносимой и отвечающей требованиям, которые предъявляются к ПК при выполнении критически важных задач. Для меня это был шанс создать еще одну операционную систему! В конце концов Билл убедил меня, что такую возможность нельзя упускать, так что в октябре 1988 года я перешел в Microsoft и начал подбирать группу для создания новой ОС. В то время я еще не понимал, что это будет самый амбициозный проект ОС, в котором я когда-либо принимал участвовал.

В Microsoft внутреннее название проекта для новой ОС было OS/2 NT, потому что ее намерением для новой ОС было сохранение OS/2 API как первичного интерфейса. Хотя самым первичным именем NT было все-таки N-Ten и разрабатывалась она для RISC процессора Intel i860. По поводу этого Марк Люковски (Mark Lucovsky), говорил (в статье Windows Server 2003: The Road To Gold Part One: The Early Years): Первоначально мы нацеливали NT на Intel i860 (кодовое имя N-Ten), RISC-процессор, который был одним из последних в списке. Поскольку у нас не было машин с i860 для тестирования, мы использовали его эмулятор.


Именно поэтому мы назвали ее (ОС) NT, потому что она работала на N-Ten.Марк Люковски, знаменитый архитектор Windows Server (пришел в MS вместе с остальной командой Катлера из DEC, известен как разработчик диспетчера процессов NT).

Мы начали проект с пятью парнями из DEC и одним из MS, этого парня звали Стив Вуд. И мы оставались крошечной группой долгое время, в течении лета. Мы думали ‘Как это трудно, создать ОС?’ и запланировали 18 месяцев на разработку. Но мы забыли о части важного материала – пользовательском режиме, сети и прочем.Марк Люковски.

К концу 1989 группа NT начала расти. Руководство добавило команду разработчиков сети и расширила команду безопасности, в которую входил только один человек. В этом же году появились первые образцы i860, которые команда стала использовать вместо эмуляторов. К сожалению, выяснилось, что он не в состоянии эффективно исполнять написанный код и группе пришлось переориентироваться на MIPS архитектуру, в итоге решено было остановиться на чипе MIPS R3000.

Немного позже началось портирование NT на Intel i386 процессор, который был наиболее распространен в то время. Люковски объяснил, почему изначально было важно не нацеливать на него NT. «Некоторое время, мы избегали 386, чтобы избежать заточки на архитектуру. Мы не хотели использовать допущение о немобильности.»

Успех Windows 3.0, в апреле 1990, изменил отношения Microsoft с IBM. Спустя шесть недель после того, как Microsoft выпустила Windows 3.0, она переименовала OS/2 NT в Windows NT, и определила Win32 API, как официальный API для NT (а это было ударом для IBM). Сам Люковски говорил на этот счет: Мы посмотрели на Windows 3.0 и сказали ‘Что если, вместо OS/2 мы сделаем 32-битную версию Windows?’. Четверо парней – Стив Вуд, Скотт Людвиг, парень из группы графики и я посмотрели на 16-битный Windows API и рассчитали. что его можно расширить до 32-битного. Мы провели полтора месяца, подготавливая набор API и затем представили его группе предварительного просмотра из 100 человек.

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

Гейтс решил, что совместимость с 16-битовым Windows API и умение запускать приложения Windows 3.x без модификации было первостепенной целью для NT, в дополнение к неполной поддержке DOS, OS/2 и POSIX API.



Рис. 3. Новый логотип HP VMS (aka OpenVMS).


Содержание раздела