WNT: правдивая история Windows NT. Windows NT что это за программа и нужна ли она? Области использования Windows NT

На базе ядра NT (New Technology), разработка корпорации Microsoft. Система была ориентирована на корпоративных пользователей. Windows NT имела графический интерфейс пользователя и предоставляла Win32 API - 32-разрядный интерфейс прикладного программирования для разработки новых приложений, способных использовать все возможности операционных систем высокого уровня, к которым, в частности, относятся многопоточные (или многозадачные) процессы, синхронизация, защита от несанкционированного доступа, ввод-вывод и управление объектами. Windows NT могла взаимодействовать с другими операционными системами корпорации Microsoft, с Apple Macintosh, с UNIX-подобными системами по сетям различных типов. Взаимодействие могло происходить как с однопроцессорными, так и с многопроцессорными компьютерами, построенными с использованием CISC- или RISC-технологий. Изначально Windows NT развивалась отдельно от семейства операционных систем Windows 9x и позиционировалась на рынке, как решение для рабочих станций (Windows NT Workstation) и серверов (Windows NT Server). Windows NT дала начало семейству операционных систем, в которое входят Windows 2000, Windows XP, Windows Server 2003.

В ноябре 1988 года стартовал совместный проект компаний IBM и Microsoft по созданию операционной системы нового поколения - OS/2 NT, которая могла запускать и программы, написанные и для Windows, и для OS/2, и должна была стать заменой обеим системам. Но в мае 1990 года вышла Windows 3.0, которая принесла Microsoft коммерческий успех, и компания решила сделать программный интерфейс (API) Windows основным в OS/2 NT. Это вызвало недовольство со стороны IBM, которая продвигала OS/2 API. В результате контракт был расторгнут, и компании стали развивать имеющийся общий код самостоятельно. Результатом разработок IBM стала OS/2 3.0, а Microsoft - Windows NT, появившаяся в августе 1993 года. Впоследствии ей присвоили номер 3.1 для соответствия вышедшей немного ранее Windows 3.1. Новую систему отличали от Windows 3.1 следующие особенности:

  • 32-битность. Новая система могла использовать все возможности 32-битных процессоров, в том числе запускать 32-битные программы и адресовать большие объемы памяти (до 4 гигабайт);
  • вытесняющая многозадачность. Операционная система не ждала, когда процесс сам захочет освободить процессор, а принудительно снимала его с выполнения после того, как тот израсходовал отведенное ему время;
  • отсутствие MS-DOS. Windows NT 3.1 была самостоятельной операционной системой, имела собственный загрузчик. При завершении работы система не выходила в MS-DOS, а предлагала выключить или перезагрузить компьютер;
  • поддержка UNICODE. Это была первая операционная система, поддерживающая UNICODE на внутреннем уровне;
  • многоплатформенность. Windows NT работала не только на 32-битных x86-процессорах, но и на 64-битных MIPS R4000 и DEC Alpha 21064;
  • поддержка 16-битных программ OS/2. Часть прав на код OS/2 осталось у Microsoft, поэтому эта и все последующие версии Windows NT могли запускать такие программы;
  • совместимость с приложениями POSIX 1.0 на уровне исходных кодов;
  • поддержка симметричной многопроцессорности (до 16 процессоров);
  • поддержка файловых систем: собственной NTFS и HPFS, доставшейся в наследство от OS/2. В обеих системах, в отличие от FAT, можно было использовать длинные имена файлов, до 255 символов;
  • улучшенные сетевые возможности. В дополнение к поддерживаемым протоколам NetBEUI и IPX были добавлены SMB, TCP/IP и SNMP;
  • редактор древовидного реестра, в котором хранились все настройки системы.

Windows NT 3.1 имела такой же пользовательский интерфейс, как и Windows 3.1, и выходила в двух редакциях - Windows NT и Windows NT Advanced Server. Впоследствии вышло три пакета обновлений (Service Pack) для этой системы, а в сентябре 1994 года появилась новая версия - 3.5. Были добавлены совместимость с сетями NetWare, поддержка длинных имен файлов в FAT, поддержка OpenGL API, улучшенная работа 16-битных программ для Windows и MS-DOS (каждая работала теперь в собственном адресном пространстве). Как и предшественница, она выходила в двух редакциях - Windows NT Workstation и Windows NT Server. В мае 1995 года появилась Windows NT 3.51. Отличия от предыдущей версии были незначительны: программа установки с новым графическим интерфейсом, новая справочная система с содержанием и поддержка процессоров PowerPC. Для NT 3.5 было выпущено три Service Pack, для 3.51 - пять.

Одновременно с выходом NT 3.51 появился пакет Shell Technology Preview, предоставляющий новый интерфейс с меню «Пуск». Этот интерфейс через два месяца был реализован по умолчанию в Windows 95, а в августе 1996 - в Windows NT 4.0. Кроме нового интерфейса, четвертая версия системы отличалась улучшенными сетевыми возможностями (включенные в стандартную поставку Internet Explorer 2.0, IIS и DNS-сервер, поддержка многопротокольной маршрутизации), новой технологией DCOM и большим числом редакций. Помимо Workstation и Server, в 1997 году вышла версия Server Enterprise Edition с улучшенной масштабируемостью и ограниченной поддержкой кластеров, а в 1998 - Terminal Server с возможностью удаленного подключения пользователей. Кроме того, была разработана специальная версия для встроенных систем - Windows NT 4.0 Embedded. Для NT 4.0 было выпущено 7 Service Pack, последняя версия называлась 6.0a.

В сентябре 1997 и августе 1998 года вышли две бета-версии операционной системы Windows NT 5.0, а в октябре 1998 года она была переименована в Windows 2000. Релиз этой системы состоялся в феврале 2000 года. Новые возможности включали: службу каталогов Active Directory, поддержку технологии Plug&Play и файловой системы FAT32, новые версии сетевых программ (IE 5.0 и IIS 5.0), улучшенные возможности шифрования (включая поддержку Encrypted File System), встроенные средства удаленного администрирования. В отличие от NT 4.0, Windows 2000 работала только на архитектуре IA-32, и выпускалась в четырех редакциях: Professional, Server, Advanced Server и Datacenter Server. Для Windows 2000 вышло 4 Service Pack, а в августе 2001 года появилась 64-битная версия Advanced Server для процессоров Itanium.

Новая версия NT 5.1 появилась в октябре 2001 года под названием Windows XP и представляла собой развитие Windows 2000 Professional. Главными изменениями были улучшенный пользовательский интерфейс, быстрое переключение пользователей, усовершенствованное удаленное администрирование, функция восстановления системы и отката установки драйверов. Система получила два пакета обновлений и выходила в следующих редакциях:

  • Professional (базовая версия);
  • Home (с усечёнными сетевыми возможностями);
  • Media Center Edition (с дополнительными мультимедиа-приложениями);
  • Starter Edition (сильно ограниченная, без сетевых функций);
  • 64-bit Edition (для процессоров Itanium);
  • x64 Edition (для процессоров с расширениями AMD64 или EM64T);
  • N (без Windows Media Player);
  • Tablet PC Edition (для планшетных компьютеров);
  • Embedded (для встроенных систем).

В апреле 2003 года вышла серверная вариация Windows XP, получившая название Windows Server 2003 и имеющая внутреннюю версию 5.2. Отличия от Windows XP: включенная в установку платформа.NET и web-сервер IIS 6.0, улучшения в службе Active Directory, встроенный межсетевой экран, расширенный набор утилит для администрирования системы. Система вышла в четырех изданиях: Web Edition, Standard Edition, Enterprise Edition и Datacenter Edition. Последние три из них вышли также в вариантах для 64-битных x86-процессоров, а Enterprise и Datacenter - ещё и для Itanium. В 2005 году появились два обновления, Service Pack 1 и R2.

В этой статье мы рассмотрим виды операционных систем Windows NT. Windows NT - это не Windows2000 или какая-нибудь еще. Это серия, а точнее платформа, на базе которой ведутся разработки ОС. Практически все семейство Windows базируется на этой платформе. Помимо NT есть еще платформа 9х, к которой относится Windows95, Windows98 и WindowsME.

Из-за того, что были опасения в неправильной работе программ, написанных с учётом старых версий ОС, в свет выпустили 10-ую версию операционной системы сразу после восьмой. Иначе 9-ка в версии могла толковаться программой как операционная система серии 9-х. Подробности о том, что же такое NT - в этой статье.

Windows NT (в просторечии просто NT) — линейка операционных систем (ОС) производства корпорации Microsoft и название первых версий ОС. Windows NT была разработана после прекращения сотрудничества Microsoft и IBM над OS/2, развивалась отдельно от других ОС семейства Windows (Windows 3.x и Windows 9x).

В отличие от Windows 3.x и Windows 9x, Windows NT позиционировалась как надёжное решение для рабочих станций (Windows NT Workstation) и серверов (Windows NT Server). Windows NT дала начало семейству операционных систем, в которое входят: собственно Windows NT, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows 8. Информация из статьи Windows NT , Wikipedia.

Название ОС Windows

Номер версии NT

Windows NT 4.0 4.0.1381
5.0.2195
Windows XP 5.1.2600
6.0.6000
Windows 7 6.1.7600

Номер, который стоит после букв NT - это порядковый номер разработки ОС на базе NT. Сейчас выходит Windows7 (Windows NT6.1), седьмая разработка на базе NT. Vista - NT6.0, XP - NT5.1, Windows2000 - NT5.0. Win2K - это просто физическая интерпретация числа (2К=2000). Windows NT - это целое семейство ОС. С этим часто сталкиваешься, когда скачиваешь руководства по установке и настройке или драйвера устройств.

Со времён Windows95 интерфейс операционной системы принципиально не сильно изменился. Разумеется, он стал качественнее, совершеннее и удобнее, появилось много новых функций. Но человек, работавший на Windows2000 достаточно легко освоится и в последующих версиях ОС Windows (если говорить об интерфейсе системы в целом). Технически системы отличаются друг от друга, способы решения пользовательских задач на разных системах тоже различаются.

В целом, если описывать данное семейство ОС, то можно сказать, что история ОС Windows делится на 2 части - до выхода Windows Vista и после. Ничего принципиально нового (кроме визуальных эффектов) в интерфейс этой версии своей ОС разработчики Microsoft не привнесли, однако полностью было переписано ядро системы.

Из-за нового ядра была потеряна совместимость со старыми программами (разработка которых остановилась до выхода Vista) и драйверами старых устройств. Этим в большей мере объясняется дурная слава и непопулярность этой версии Windows. В Windows7 разработчики учли ошибки, производители софта и железа уже имели возможность выпускать ПО и оборудование с учётом новых требований ОС, однако большинство старых программ и старого оборудования этой операционной системой уже не поддерживается.

Совместимость версий Windows

Чтобы выйти из положения (множество промышленных программ не работает в Windows7), в версиях Windows7 Professional, Enterprise и Ultimate есть возможность запускать программы из-под XP-Mode. XP-Mode представляет собой виртуальную машину и образ лицензионной WindowsXP. Правда графические возможности эмуляции находятся на уровне S3 Trio64 без поддержки 3D, то есть самый минимум.

Всем привет Скажу сразу, что Windows NT это не совсем программа, это семейство виндовс от Microsoft. Под названием Windows NT скрывается понятие операционных систем от Майкрософт, не какой-то конкретной, а всех систем. Виндовс сегодня оч популярная операционка и популярнее ее нет. Мое мнение что популярность обусловлена в первую очередь тем что достойной альтернативы нет и уже не будет — глупо сейчас соревноваться с гигантом Майкрософт.

Но тем не менее все верно — у вас реально может быть что-то, что будет иметь название Windows NT, ибо данное название фигурирует много где. Точных примеров я не приведу, не помню, но встретить у себя в винде вы можете эту надпись спокойно.

Если перед вами стал вопрос удалять ПО Windows NT или нет то я отвечу так — лучше не удалять. Ибо могут быть потом проблемы. Логично если подумать, то становится ясно, что все где написано Windows NT, то деинсталлировать это стоит только тогда, когда вы в этом точно уверены.

Windows NT была разработана в 1990-х годах, после того как Майкрософт перестала работать с фирмой IBM (эх, крутые ноутбуки они делали), вместе эти компании разрабатывали OS/2, это тоже была операционка, непонятная мне до сих пор, но неважно. Короче тогда и начали пилить винду и сами знаете что из этого получилось — мега крутецкая винда, монополия одна, всем не нравится, но все пользуются

Да, есть еще Линукс, но увы, он для узкого круга юзеров — совсем не для тех кому нужно просто и красиво и чтобы несложно. Мне лично винда нравится, хотя многим она чем-то не угодила, особенно Windows 10, но я ничего в ней кривого не вижу..

Древняя винда, когда-то давно это было шедевром и пределом мечтания:


А вот сравните, это уже семерка, ну то есть Windows 7, многие до сих пор на ней сидят и слазить не собираются:


Я был долгим поклонником Windows XP, даже оч долгим, сидел пока сиделося — вышла уже Windows 7, а я тусовался на XP… И вот я купил новое железо, это был 1150 сокет, все новое, но мне удалось туда поставить Windows XP и я еще сидел годика два. Дальше вышла Windows 10, и я перешел со временем на нее. Комп работает неделями и все норм, нет глюков и синих экранов, ошибок нет. Все работает как часы. Правда в XP этого тоже почти не было. Так что мне винда как-то всем нравится..

Я написал списочек где именно вы можете заметить такое как Windows NT:

  1. описания каких-то системных файлов;
  2. настройки винды, системные настройки, там везде может встречаться Windows NT;
  3. в справочных материалах к программе или даже в инструкциях к какому-то оборудованию;
  4. вряд ли но возможно что под Windows NT будет косить какой-то вирус;
  5. в системных папках, например в C:\Windows есть куча барахла всякого, в описании которого встречается Windows NT;

Совсем забыл написать, я сам точно сказать не могу, но вроде бы есть и сама операционка под названием Windows NT, вот ее загрузочный экран.

История разработки

Разработка Windows NT под рабочим названием «NT OS/2 » была начата в ноябре 1988 года группой специалистов во главе с Дэвидом Катлером (англ. Dave Cutler ), который перешёл в Microsoft из DEC , где они разрабатывали VAX и VMS . Работа шла параллельно с разработкой фирмой IBM собственной ОС, OS/2 2.0 , которая окончательно вышла только в апреле 1992 года . Одновременно с этим фирма Microsoft продолжала разрабатывать свои ОС семейства DOS и Windows , отличающиеся меньшими требованиями к ресурсам компьютера, чем IBM OS/2. После того, как в мае 1990 года была выпущена Windows 3.0 , Microsoft решила добавить в NT OS/2 программный интерфейс (API), совместимый с Windows API . Это решение вызвало серьёзные трения между фирмами Майкрософт и IBM, которые закончились разрывом совместной работы. IBM продолжила разработку OS/2 самостоятельно, а Майкрософт стала работать над системой, которая была в результате выпущена под названием Windows NT. Хотя эта система не сразу стала популярной, подобно DOS, Windows 3.x или Windows 9.x, с точки зрения маркетинга Windows NT оказалась существенно более удачной, чем OS/2.

Нужно отметить, что в качестве программных интерфейсов ОС NT изначально планировались API OS/2 и затем POSIX , поддержка Windows API была добавлена в последнюю очередь. Кроме того, в качестве аппаратной платформы для NT изначально планировались Intel i860 и затем MIPS , поддержка Intel x86 также была добавлена позднее. Затем, в процессе эволюции этой ОС исчезла поддержка обоих изначально запланированных программных интерфейсов и обеих изначально запланированных аппаратных платформ. Для i860 даже не было ни одной релизной версии этой ОС, хотя именно от кодового названия этого процессора, N10 (N Ten), происходит название самой ОС NT. Ныне Microsoft расшифровывает аббревиатуру NT как New Technology . А в качестве альтернативы POSIX-подсистеме Microsoft стала предлагать пакет Сервисы Microsoft Windows для UNIX .

Для разработки ОС NT фирма Microsoft пригласила группу специалистов из компании DEC во главе с Дэвидом Катлером (англ. ), обладающую опытом создания многозадачных операционных систем, таких как VAX/VMS и RSX-11 . Некоторое сходство, отмеченное между внутренними архитектурами Windows NT и ОС семейства VMS, дало основания обвинить вновь принятых сотрудников Microsoft в краже интеллектуальной собственности DEC. Возникший конфликт был разрешён мирным путём: DEC признала собственность Microsoft на технологии, лежащие в основе Windows NT, а Microsoft создавала и поддерживала версию Windows NT для архитектуры DEC Alpha.

Несмотря на общие корни, совместимость Windows NT и OS/2 уменьшалась с каждым новым выпуском этой ОС. Поддержка API OS/2 2.0, хотя планировалась в NT, так и не была завершена; в Windows NT 4.0 была удалена поддержка файловой системы HPFS , а в Windows XP была удалена подсистема поддержки программ для OS/2 1.x.

Версии

Название (кодовое название ), варианты номер версии первый выпуск последний выпуск /
Windows NT 3.1 3.1.528 27 июля SP3 (10 ноября )
Workstation, Advanced Server
Windows NT 3.5 (Daytona ) 3.5.807 21 сентября SP3 (21 июня )
Workstation, Server
Windows NT 3.51 (Tukwila ) 3.51.1057 30 мая SP5 (19 сентября )
Workstation, Server
Windows NT 4.0 (Indy ) 4.0.1381 29 июля SP6a (30 ноября )
Workstation, Server, Server Enterprise (Granite ), Terminal Server (Hydra ), Embedded (Impala )
Windows 2000 (Cairo ) 5.0.2195 17 февраля SP4 (26 июня )
Professional, Server, Advanced Server, Datacenter Server
Windows XP (Whistler ) 5.1.2600 25 октября SP3 (6 мая )
Home, Professional, 64-bit, Media Center (eHome ), Tablet PC, Starter, Embedded (Mantis ), N; Windows Fundamentals for Legacy PCs (Eiger )
Windows Server 2003 (Whistler Server , Windows .NET Server ) 5.2.3790 24 апреля SP2 (13 мая )
Standard, Enterprise, Datacenter, Web, Small Business Server (Bobcat ), Compute Cluster Server, Storage Server; Windows XP Professional x64
Windows Vista (Longhorn ) 6.0.6000 30 января SP2 (25 мая )
Starter, Home Basic, Home Premium, Business, Enterprise, Ultimate, N Home Basic, N Business; x64-варианты всех, кроме Starter
Windows Server 2008 (Longhorn Server ) 6.0.6001 27 февраля SP2 (27 мая )
Standard, Enterprise, Datacenter, HPC, Web, Storage, Small Business (Cougar ), Essential Business (Centro ), Itanium; x64-варианты всех, кроме HPC
Windows 7 (Blackcomb , Vienna ) 6.1.7600 22 октября SP1 (KB976932) (22 февраля )
Начальная, Домашняя базовая, Домашняя расширенная, Профессиональная, Корпоративная, Максимальная, Windows 7 N, Windows 7 E; x64-варианты всех, кроме Начальной
Windows Server 2008 R2 6.1.7600 22 октября SP1 (KB976932) (22 февраля )
Standard, Enterprise, Datacenter, HPC, Web, Storage, Small Business , Itanium; все версии - только 64-разрядные
Windows 8 6.2.9200 26 октября Pro (26 октября )
Windows 8, Windows 8 RT, Профессиональная, Профессиональная N, Профессиональная WMC, Корпоративная, Корпоративная N; x64-варианты всех, кроме Windows RT
Windows Server 2012 6.2.9200 26 октября RTM (1 августа )
Standard, Datacenter, Storage; все версии - только 64-разрядные

Внутренняя архитектура

Компоненты ядра

Компоненты пользовательского режима

Подсистема пользовательского интерфейса в Windows NT реализует оконный интерфейс , подобный интерфейсу предыдущих версий Windows. Двумя типами объектов этой подсистемы, отсутствовавшими в 16-битных версиях Windows и в Windows 9x, являются оконные станции и рабочие столы . Оконная станция соответствует одному сеансу пользователя Windows NT - например, при подключении через службу удалённого рабочего стола создаётся новая оконная станция. Каждый запущенный процесс принадлежит одной из оконных станций; службы, кроме помеченных как способные взаимодействовать с рабочим столом, запускаются в отдельных, невидимых оконных станциях.

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

Оконными станциями и рабочими столами исчерпываются объекты подсистемы пользовательского интерфейса Windows NT, которым могут быть назначены права доступа. Оставшиеся типы объектов - окна и меню - предоставляют полный доступ любому процессу, который находится с ними в одной оконной станции. Поэтому службы Windows NT по умолчанию запускаются в отдельных оконных станциях: они работают с повышенными привилегиями, и возможность процессов пользователя неограниченно манипулировать окнами служб могла бы привести к сбоям и/или проблемам безопасности.

Программные интерфейсы

Native API

Для прикладных программ системой Windows NT предоставляется несколько наборов API. Основной из них - так называемый «родной» API (NT Native API ), реализованный в динамически подключаемой библиотеке ntdll.dll и состоящий из двух частей: системные вызовы ядра NT (функции с префиксами Nt и Zw , передающие выполнение функциям ядра ntoskrnl.exe с теми же названиями) и функции, реализованные в пользовательском режиме (с префиксом Rtl). Часть функций второй группы используют внутри себя системные вызовы; остальные целиком состоят из непривилегированного кода, и могут вызываться не только из кода пользовательского режима, но и из драйверов . Кроме функций Native API, в ntdll также включены функции стандартной библиотеки языка Си .

Официальная документация на Native API весьма скудна, но сообществам энтузиастов удалось методом проб и ошибок собрать достаточно обширные сведения об этом интерфейсе. В частности, в феврале 2000 года опубликована книга Гэри Неббета «Справочник по базовым функциям API Windows NT/2000 » (ISBN 1-57870-199-6); в 2002 году она была переведена на русский язык (ISBN 5-8459-0238-X). Источником информации о Native API может служить Windows DDK , где описаны некоторые функции ядра, доступные посредством Native API, а также изучение кода Windows (обратный инжиниринг) - посредством дизассемблирования , либо используя исходные тексты Windows 2000, ставшие доступными в результате утечки, либо используя исходные тексты Windows 2003 , доступные в рамках программы Windows Research Kernel.

Программы, выполняющиеся до загрузки подсистем, обеспечивающих работу остальных API ОС Windows NT, ограничены использованием Native API . Например, программа autochk , проверяющая диски при загрузке ОС после некорректного завершения работы, использует только Native API.

Win32 API

Чаще всего прикладными программами для Windows NT используется Win32 API - интерфейс, созданный на основе API ОС Windows 3.1 , и позволяющий перекомпилировать существующие программы для 16-битных версий Windows с минимальными изменениями исходного кода. Совместимость Win32 API и 16-битного Windows API настолько велика, что 32-битные и 16-битные приложения могут свободно обмениваться сообщениями, работать с окнами друг друга и т. д. Кроме поддержки функций существовавшего Windows API, в Win32 API был также добавлен ряд новых возможностей, в том числе поддержка консольных программ , многопоточности , и объектов синхронизации, таких как мьютексы и семафоры . Документация на Win32 API входит в состав Microsoft Platform SDK и доступна на веб-сайте .

Библиотеки поддержки Win32 API в основном названы так же, как системные библиотеки Windows 3.x , с добавлением суффикса 32: это библиотеки kernel32 , advapi32 , gdi32 , user32 , comctl32 , comdlg32 , shell32 и ряд других. Функции Win32 API могут либо самостоятельно реализовывать требуемую функциональность в пользовательском режиме, либо вызывать описанные выше функции Native API, либо обращаться к подсистеме csrss посредством механизма LPC (англ. ), либо осуществлять системный вызов в библиотеку win32k , реализующую необходимую для Win32 API поддержку в режиме ядра. Четыре перечисленных варианта могут также комбинироваться в любом сочетании: например, функция Win32 API WriteFile обращается к функции Native API NtWriteFile для записи в дисковый файл, и вызывает соответствующую функцию csrss для вывода в консоль .

Поддержка Win32 API включена в семейство ОС Windows 9x ; кроме того, она может быть добавлена в Windows 3.1x установкой пакета Win32s . Для облегчения переноса существующих Windows-приложений, использующих для представления строк MBCS-кодировки, все функции Win32 API, принимающие параметрами строки, были созданы в двух версиях: функции с суффиксом A (ANSI ) принимают MBCS-строки, а функции с суффиксом W (wide ) принимают строки в кодировке UTF-16 . В Win32s и Windows 9x поддерживаются только A-функции, тогда как в Windows NT, где все строки внутри ОС хранятся исключительно в UTF-16, каждая A-функция просто преобразует свои строковые параметры в Юникод и вызывает W-версию той же функции. В поставляемых H-файлах библиотеки также определены имена функций без суффикса, и использование A- либо W-версии функций определяется опциями компиляции , а в модулях Delphi до 2010 версии, например, они жёстко завязаны на варианты с суффиксом A. При этом важно отметить, что большинство новых функций, появившихся в Windows 2000 или более поздних ОС семейства Windows NT, существуют только в Unicode-версии, потому что задача обеспечения совместимости со старыми программами и с ОС Windows 9x уже не стоит так остро, как раньше.

POSIX и OS/2

Первый выпуск Windows NT 4 поддерживал четыре платформы (x86, Alpha, MIPS и PowerPC), но поддержка менее распространённых платформ сокращалась по мере выхода пакетов обновления : из SP1 была удалена поддержка MIPS, из SP3 - поддержка PowerPC. Последними выпусками Windows NT 4 поддерживались только x86 и Alpha; хотя поддержка Alpha планировалась к включению в Windows 2000, она была исключена из версии RC2. В результате единственной платформой, поддерживаемой на Windows 2000, стала x86.

Поддержка 64-битных процессоров была впервые реализована в Windows XP для IA-64 - архитектуры процессоров Intel Itanium . На основе 64-битной версии Windows XP были созданы также 64-битные серверные версии Windows 2000; позже поддержка процессора Itanium была добавлена и в часть версий Windows Server 2003 . Второй 64-битной архитектурой, поддерживаемой в ОС семейства Windows NT, стала созданная AMD архитектура x86-64 , позже реализованная в процессорах Intel под названием EM64T . Одновременно были выпущены Windows Server 2003 SP1 x64 и Windows XP Professional x64, представляющие собой серверный и настольный варианты одной и той же версии Windows - в частности, к этим выпускам применимы одни и те же обновления. С 2005 года корпорацией Майкрософт было принято решение прекратить поддержку IA-64.; последней версией ОС Windows NT, полноценно поддерживающей Itanium , является Windows NT 5.2 (XP Professional 64-bit Edition и Server 2003). Однако для более дорогих (и, соответственно, труднее модернизируемых) серверов были выпущены специальные версии Windows Server 2008 и Windows Server 2008 R2 , а Windows Server 2012 поддержки IA-64 уже не получила.

Примечания

См. также

  • ReactOS - операционная система с открытым кодом, совместимая с приложениями и драйверами Windows NT.

Корни

Началось все в 1975 г., когда корпорация Digital Equipment инициировала разработку своей 32-битной платформы VAX.

Руководство этим проектом поручили Катлеру, который уже заработал себе репутацию крепкого системщика, создавая RSX-11M для знаменитых мини-компьютеров PDP-11. В 1977 г. были анонсированы машина VAX-11/780 и операционная система для нее — VMS 1.0. Спустя четыре года Катлеру безумно надоело заниматься "приписыванием" цифр после неизменного префикса из трех букв, и он решил покинуть Digital. Однако функционеры корпорации оказались хитрее: раз уж талантливого разработчика не удается удержать в лоне организации, они решили сымитировать атмосферу стартапа и свободного творчества. Было создано автономное подразделение в Сиэтле, и Катлеру позволили набрать необходимое количество персонала (около 200 человек) непосредственно из сотрудников Digital. Новая структура занялась проектированием процессорной архитектуры и операционной системы под кодовым названием Prism.

Диаграмма развития операционных систем семейства Windows NT

Недолго длился "счастья миг", большие боссы не сумели довести начатое дело до логического завершения, и в 1988 г. Катлер вместе со своими 200 инженерами и программистами оказался на вольных хлебах. Но известный разработчик не остался не у дел: в то время в голове Билла Гейтса созрело решение о необходимости создания серверной ОС, конкурирующей с клонами Unix. Только чтобы заполучить Дэвида Катлера, будущий генеральный архитектор Microsoft согласился нанять 20 бывших инженеров Digital по его выбору. В ноябре 1988 г. команда, включавшая пять выходцев из Digital и одного программиста Microsoft, принялась за дело.

Задача состояла в написании ОС для нового RISC-процессора Intel i860 под кодовым названием N-Ten. Отсюда, кстати, и возникла аббревиатура NT, позднее трактованная маркетологами Microsoft как New Technology. Уже в декабре 1988 г. были готовы первые фрагменты системы. Загвоздка заключалась в том, что i860 существовал лишь на бумаге, поэтому код приходилось тестировать на программном эмуляторе. Разработка велась на "игрушечных", по нынешним меркам, машинах Intel 386 25 MHz с ОЗУ 13 MB и жесткими дисками 110 MB.

Архитектура микроядра, изначально положенная в основу NT, приобрела решающее значение, когда в 1989 г. обнаружилось — "железный" i860 не способен достаточно эффективно исполнять написанный код. Пришлось переориентироваться на MIPS R3000, а затем и на стандартный процессор Intel 386, что было сделано менее чем за год командой, увеличившейся до 28 инженеров.

В 1990 г. произошло важнейшее событие, ставшее ключевым в судьбе NT, — выход и головокружительный успех Windows 3.0. Фактически она стала первой многозадачной ОС Microsoft с приличным графическим интерфейсом, в которой можно было выполнять реальную работу. Именно заимствование данного интерфейса и API предопределили будущее NT. Вначале серверная ОС должна была стать римейком совместного с IBM проекта OS/2 и, соответственно, функционировать с существующими приложениями OS/2. Однако третья версия Windows появилась исключительно вовремя: Редмонд отказался от своих союзников и переориентировал команду разработчиков NT на проектирование Win32 API, сделанного по "образу и подобию" интерфейса Win16. Это обеспечивало столь необходимую преемственность, облегчившую портирование приложений из настольной на серверную платформу.

Группа разработки NT, превратившейся к тому моменту в Windows NT, стала стремительно разрастаться, и вскоре в ней работало около 300 человек. Отказ от ориентации на OS/2 привел к серьезным проблемам во взаимоотношениях между Microsoft и IBM. Официальных заявлений не поступало, просто на одной из межкорпоративных презентаций сотрудники IBM в замешательстве обнаружили, что созданная ОС не имеет никакого отношения к детищу их компании. Тем не менее в состав Windows NT 3.1 (нумерация была "подогнана" к текущей версии 16-разрядной Windows, существовавшей на тот момент) вошла поддержка DOS, Win16, POSIX и OS/2 API в том числе. В июле 1993 г. новая серверная система от Microsoft вышла в свет и начала свой путь.

Дальше дело пошло споро: в сентябре 1994 г. выпущена Windows NT 3.5. Предыдущая версия готовилась в лихорадочной спешке, все приходилось кодировать с нуля, и множество функций остались нереализованными. Теперь пришло время подумать об эффективности, быстродействии и… организации какого-то взаимодействия с сетями, построенными на NetWare — абсолютным лидером того времени, доминировавшим на рынке локальных сетей. Если бы в те годы так внимательно относились к вопросам регулирования монополий, как это делается сегодня, возможно, достаточно было бы написать соответствующую кляузу в соответствующую инстанцию. Увы, Microsoft пришлось самостоятельно разбираться в сложившейся ситуации. Novell колебалась: обеспечивать или нет клиентскую поддержку Windows NT. В Редмонде не могли больше ждать — они написали свой клиент NetWare, и он оказался настолько хорош, что его продолжали использовать и после выхода оригинального программного обеспечения от Novell. В мае 1995 г. благодаря архитектуре, основанной на микроядре, появилась специальная "PowerPC-редакция" ОС — Windows NT 3.51. По некоторым данным, ее выпуск был в свое время задержан вследствие неспособности IBM придерживаться плана по выводу этого процессора на рынок. Поэтому эволюция PowerPC-версии зашла несколько дальше, чем Windows NT 3.5, что позволило ей стать основой для следующей версии ОС.

Если до сего момента еще можно было говорить о каком-то сходстве архитектур Windows NT и даже Unix (в чем-то бесконечно далекой, а в чем-то весьма схожей с VMS ОС), то с релизом NT 4.0, который ввел графическую подсистему в ядро, исчез последний повод для подобных рассуждений. По идее, такое решение было абсолютно логичным выводом из печального опыта попытки интеграции в NT популярной оконной среды Windows 95. Вероятно, идея повторения архитектурной модели X Window — Unix — возникла именно из-за первоначальной "серверной ориентации" NT. Однако если собственно с "пересадкой" графической оболочки проблем не возникло, то ее быстродействие в пользовательском режиме (т. е. в виде обычного приложения) оставляло желать лучшего, что абсолютно закономерно — поддерживающая абстрагированное устройство вывода (будь то растровый дисплей, принтер или вообще что угодно) графическая подсистема Windows несоизмеримо сложнее и, соответственно, требовательнее к ресурсам, чем X Window, "понимающая" исключительно растровые дисплеи. Так, в составе ядра Windows NT 4.0, выпущенной в июле 1996 г., появился еще один модуль. Ревизия получила название Shell Update Release (SUR).

Следующим этапом стала Windows NT 5.0, выпущенная на рынке в 2000 г. под названием Windows 2000. Смена "титулов" произошла под влиянием маркетологов и оказалась, в целом, правильным решением, позволившим репозиционировать эту операционную систему. Работа продолжается и по сей день, чему свидетельство выход Windows Server 2003.

Битва за Windows Проектирование и реализация Windows Server подчинены Марку Луковски (Mark Lucovsky), одному из сторонников подразделения серверных ОС корпорации. Он руководит армией из 5 тыс. разработчиков, причисленных к семи лабораториям. Еще 5 тыс. программистов трудятся на своих рабочих местах в компаниях-партнерах, привнося ежедневно свою лепту в 50 млн. строк итогового кода ОС Windows Server 2003.

Каждый день выполняются полная компиляция и сборка системы для проверки на работоспособность и выявления ошибок. Списки обнаруженных ошибок рассылаются командам разработчиков. Сделанные исправления должны быть заявлены на электронной доске объявлений, что ставит их в очередь на внесение в основную сборку. Серверная ферма, занимающаяся компиляцией системы, постоянно модернизируется, тем не менее, как и много лет назад, полная сборка отнимает 12 ч машинного времени. И это несмотря на разделение колоссального массива кодов на отдельные независимые группы исходных текстов, организованные в древовидные иерархии.

Квинтэссенция процесса разработки — часовые совещания в так называемой "боевой комнате" (War Room), проводимые два или три раза ежедневно (в 9.30, 14.00 и 17.00). Им предшествуют аналогичные мероприятия в локальных "боевых комнатах" рабочих групп в 8.00. На главном совещании обсуждаются исправления обнаруженных ранее ошибок и определяется общее состояние проекта. В последние дни здесь, в основном, искали пути решения важной проблемы — переименования Windows.NET Server 2003 на Windows Server 2003. Тысячи имен в различных модулях, и это — в последний момент перед выпуском системы, что вызвало серьезную головную боль у разработчиков.

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

Сборка начинается каждый день в 16.30 и может быть отложена до 18.00, чтобы после третьего совещания в "боевой комнате" удалось включить в систему последние исправления. Команда не может прийти на совещание без готового решения существующих проблем, иначе им лучше вообще не появляться там. Каждая из семи лабораторий имеет полную копию исходных текстов системы, в которые они вносят свои поправки, компилируют и проверяют на работоспособность. Если все прошло гладко — новый код объединяется с кодом, созданным другими группами в главную сборку. Проблема может заключаться во взаимодействии нового кода, написанного различными группами. Не всегда главная сборка проходит удачно, иногда система оказывается нежизнеспособной. В таком случае, как только обнаруживается модуль-виновник (обычно около трех-четырех утра), писавшие его срочно вызываются на рабочее место и не покидают его вплоть до исправления ошибки. Поэтому программисты должны быть 24 ч в сутки 6 дней в неделю готовы к труду (шестидневка вводится по мере приближения даты выпуска продукта).

Основной принцип, на котором построены финальные стадии тестирования, — использование собственных продуктов в проектном процессе. Как только система достигает "первого уровня" стабильности, она становится основной ОС в рабочих группах. "Второй уровень" считается достигнутым, когда ОС приобретает способность функционировать. Только после этого допускается ее использование в кампусе Microsoft. Так было с файловым сервером под NT, первым использованием его стало хранение исходных текстов Windows NT, так поступили и с первой, и со всеми последующими версиями Active Directory.

Затем продукт передается на тестирование избранным партнерам по программе JDP (Joint Development Partners). Если обнаруживаются ошибки, принимается "волевое решение": оставить их в системе и сохранить дату старта продаж или перенести дату выпуска и заняться доработками. В последнем случае все результаты аннулируются, и тестирование начинается с нуля.

Гораздо сложнее осуществлять послепродажную поддержку. При выявлении недоработок, "дыр" в безопасности или необходимости добавления новых функций в продукт приходится формировать или локальный патч, или полноценный Service Pack. Поскольку до этого патча или Service Pack уже существовали другие, новый код тестируется на множестве вариантов системы, перебирая все возможные комбинации патчей и Service Pack’ов. Вдобавок, для осуществления полноценной проверки работоспособности корпорация поддерживает отдельные фрагменты своей сети, функционирующие на старых версиях продуктов (например, Windows Server 2000), где можно "обкатать" систему в "полевых условиях".

Как VMS превратилась в WNT

Некоторые остряки в свое время шутили, что если выполнить операцию инкремента (увеличения на единицу) каждой буквы названия катлеровской операционной системы VMS, то получится WNT или Windows NT. Как утверждают профессионалы, это чистая правда. Не предвзятое мнение, базирующееся на факте, что основные архитекторы NT являлись в свое время разработчиками VMS, а объективная реальность.

По сути, NT — воплощение радикально переработанных, реализованных на языке C для достижения лучшей мобильности, архитектурных идей ассемблерного ядра VMS, дополненных соответствующими интерфейсными API и новыми файловой и графической подсистемами. Общность архитектурных решений двух систем весьма велика. Так, у них одинаковые понятия процессов, приоритеты (32-х уровней), управление изменением приоритетов и контроль распределения процессорного времени между ними. Но несмотря на значительное сходство, несомненно, обусловленное предыдущим опытом команды главного архитектора — Катлера, NT изначально создавалась как ориентированная на многопоточную обработку ОС, — одно это "небольшое" отличие позволяет понять степень отдаления NT от "базовой" архитектуры VMS.

Драйверы в обеих ОС работают в рамках стековой модели, каждый слой которой изолирован от других, что позволяет организовывать многоступенчатую схему управления устройствами. Системы допускают своппирование как пользовательских процессов, так и системных, включая драйверы. Похожи и способы представления ресурсов, обе системы рассматривают их как объекты и распоряжаются ими с помощью Object Manager. Безопасность NT, как и положенные в ее основу Discretionary Access Control Lists или DACL, ведет свою родословную от VMS 4.0.

В 1993 г. инженеры Digital, просмотрев спецификации Windows NT, обнаружили ее разительное сходство с экспериментальной ОС Mica, создававшейся в рамках проекта Prism. Откуда такое внимание к продукции Редмонда? Не от хорошей жизни принялись изучать внутренности чужой системы сотрудники Digital. В 1992 г. корпорация попала в затяжное пике, деньги утекали сквозь пальцы, а продажи нового процессора Alpha буксовали. Теперь в поисках спасения боссы компании попытались обратиться за помощью к своему злейшему конкуренту Intel, на что ее президент, Эндрю Гроув (Andrew Grove), ответил отказом. В конце концов пришлось идти на поклон к "Гейтсу Третьему" и просить порт Windows NT под Alpha в обмен на обещание сделать NT, в ущерб VMS, своей основной операционной системой. Однако получив предварительную версию NT, инженеры Digital постепенно поняли, что эта ОС требует существенно больше ОЗУ, чем будет содержать их типичный "пятитысячедолларовый Alpha-ПК". Для массового рынка RISC-станций NT явно не годилась, попытка встать под флаги Microsoft для Digital (как, впрочем, и для большинства других компаний) обернулась потерей времени и денег.

Игра в "найди 10 отличий" между WNT и VMS принесла Digital немалые дивиденды. По одной из версий, опубликованной в те времена в Business Week, вместо того чтобы открыто подать в суд, президент Digital, имея на руках неопровержимые доказательства нарушения прав интеллектуальной собственности, решил получить больше, затратив меньше. Он обратился в Microsoft за разъяснениями, что вылилось в подписание масштабного контракта, по которому Digital становилась основным сетевым интегратором NT. Кроме того, в октябре того же года Редмонд отказался от поддержки в Windows NT обоих конкурирующих с Alpha процессоров: PowerPC и MIPS. К сожалению для руководства Digital, альянс вскоре был разрушен, и статус "NT network installation services for Microsoft" перешел к Hewlett-Packard, которой, впрочем, несколькими годами позже достался и другой тяжкий груз корпорации — ОС VMS.

Несмотря на то что пути NT и VMS разошлись, эти операционные системы продолжили серию своеобразных заимствований. В частности, Windows NT получила поддержку кластеров только в 1997 г., в то время как в VMS она была с 1984 г., еще позже появилась 64-разрядная версия Windows (VMS мигрировала на большую разрядность еще в 1996 г.). С другой стороны, в VMS 7.0 в 1995 г. анонсировали потоки на уровне ядра, а частью VMS 7.2 стали Registry-подобная база данных и глобальный журнал событий, аналогичный соответствующим средствам NT. В свет выходит Windows Server 2003, посмотрим, что будет дальше…



error: Контент защищен !!