29 лет назад родилась Windows NT
Как и положено настоящему
27 июля 1993 года корпорация Microsoft представила публике принципиально новую системную платформу для серверов и рабочих станций — Windows NT 3.1. Интересного в ней было довольно много. Прежде всего, несмотря на то, что это был первый в истории выпуск данной ОС, версий Windows NT 1 и 2 не существовало в природе. Разработчики взяли пример с Джорджа Лукаса: тот запустил в прокат свою легендарную киновселенную сразу с 4-го эпизода, Microsoft — с 3-го, с тем расчетом, чтобы номер версии перекликался с популярной у пользователей «настольной» версией Windows. И хотя интерфейс этих двух ОС был очень похож, Windows 3.1 являлась консервативной 16-разрядной системой, опиравшейся на платформу MS-DOS, в то время как NT изначально ориентировалась на 32-разрядную архитектуру.
На самом деле, Windows NT 3.1 была отнюдь не новой разработкой. Еще в 80-х годах Microsoft и IBM совместно трудились над созданием операционной системы OS/2, и даже добились на этом поприще серьезных успехов. Однако IBM — слишком большая и громоздкая корпорация — отличалась бюрократизмом, разные отделы продвигали собственные компоненты и дополнения для включения в дистрибутив, из-за чего он обрастал большим числом всевозможных не всегда актуальных модулей, обсуждение рабочих вопросов и принятие решений занимало слишком много времени. Разработчики из IBM в первую очередь стремились к поддержке собственного «железа», в то время как Microsoft старалась обеспечить совместимость ОС с максимальным ассортиментом различного оборудования. Разницу в подходах наглядно иллюстрирует такой пример: в IBM эффективность работы программистов оценивалась по количеству строк написанного ими кода, что вело к неоправданному «раздуванию» объема программ, в то время как в Microsoft, наоборот, старались оптимизировать размер исходников, для чего зачастую выкидывали оттуда даже комментарии. Кроме того, между создателями этих платформ назрел конфликт по поводу того, как позиционировать только что появившуюся Windows 3.0 по отношению к OS/2. В IBM желали, чтобы партнер выделял максимум ресурсов на разработку их совместной операционной системы, но неожиданный рыночный успех Windows 3.0 открыл перед Microsoft перспективы построить бизнес вокруг этой платформы. В итоге более молодая и динамично развивающаяся компания под руководством Билла Гейтса в 1992-м году вышла из проекта OS/2, забрав с собой кое-какие наработки. Они-то и легли в основу Windows NT.
Были выпущены версии Windows NT не только для Intel x86, но также для архитектур DEC Alpha и MIPS R4000. Хотя Windows NT 3.1 изначально была 32-разрядной операционной системой, ее распространение ограничивал тот факт, что на момент выхода ОС еще не существовало достаточного количества совместимых с ней 32-разрядных приложений. Кроме того, в отличие от Windows 3.1, NT предъявляла к железу более высокие требования — для запуска этой системы нужны были более мощные и, разумеется, дорогие машины: в то время как средний объем памяти на ПК того времени не превышал 4 Мбайт, для нормальной работы Windows NT требовалось 8, а в рекомендациях значились и вовсе фантастические 16 Мбайт оперативной памяти.
Microsoft выпустила NT 3.1 в двух модификациях: базовую для рабочих станций и Advanced Server — для серверов. Поскольку ОС разрабатывалась с прицелом на корпоративный рынок, она изначально проектировалась не только как многозадачная, но и как многопользовательская система с возможностью аудита событий, связанных с безопасностью. Именно в Windows NT 3.1 впервые появилась поддержка принципиально новой на тот момент файловой системы NTFS, хотя «родной» для нее по-прежнему считалась FAT. Здесь же впервые появился диспетчер загрузки под названием NTLDR. Для совместимости с «настольными» версиями Windows новая платформа поддерживала расширенную 32-разрядную модификацию Windows API, получившую название Win32, хотя о полной совместимости речи тогда не шло из-за существенных различий в архитектуре «настольной» и «корпоративной» версий. Дистанция между ними значительно сократилась только с выходом Windows 95. Windows NT была разработана для многопроцессорных систем, она поддерживала вытесняющую многозадачность. Несмотря на то, что интерфейс Windows 3.1 и в Windows NT был практически полностью идентичен внешне, для NT его переписали заново.
Над разработкой Windows NT 3.1 трудилось 250 программистов, исходники ОС состояли из 5,6 млн. строк кода, и за последний год перед релизом команда выявила и устранила более 30 000 ошибок. Стоимость разработки системы оценивалась в 150 млн. долларов. Для упрощения портируемости ОС на различные аппаратные платформы большинство компонентов, включая ядро NT, были написаны на языке Си. Графическую подсистему и компоненты, отвечающие за работу в сети, написали на С++ с использованием Ассемблера (для модулей, требующих прямого доступа к оборудованию). В октябре 1991 года разработчики провели первую публичную демонстрацию Windows NT на выставке COMDEX, а 27 июля 1993 года состоялся релиз — сначала только версий для x86 и MIPS, версию для DEC выпустили в сентябре.
Лицензия для рабочей станции стоила 495 долларов, версия Advanced Server — 1495 долларов. Изначально предполагалось, что итоговая стоимость серверной версии составит 2995 долларов, а первоначальная сумма станет своего рода «рекламной акцией» в течение первых 6 месяцев продаж, но в итоге Microsoft так и не подняла цену. Помимо английского, Windows NT была доступна на голландском, французском, немецком, японском, испанском и шведском языках, версия для рабочих станций была также локализована на датском, финском, итальянском, норвежском и португальском языках. Поддержки русского языка в этой версии NT не имелось. До 1994 года, когда была выпущена Windows NT 3.5, Microsoft продала более 300 000 копий первой версии Windows NT.
Windows NT 3.1 — это система — долгожитель: ее поддержка была полностью прекращена только 31 декабря 2000 года, а отдельные компоненты этой ОС до сих пор можно отыскать в других версиях Windows, базирующихся на платформе NT, включая современные Windows 10 и 11.
Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram-канале ↩