Что такое виндовс nt. WNT: правдивая история Windows NT

(NT 6.0)

2006 Не поддерживается
Почти, не используется (NT 6.1) 2009 Не поддерживается
Активно используется (NT 6.2) 2012 Не поддерживается
Почти, не используется (NT 6.3) 2013 Поддерживается
Почти, не используется (NT 10) 2015 Поддерживается
Активно используется

Серверные Windows

Логотип Версия Год Статус
1993 Не поддерживается
Как правило, не используется
1994
1995
1996
2000
2003 Не поддерживается
Пока еще используется
2005
2008
2009 Поддерживается
Активно используется
2012
2013
2016
2018 Начало использования

Все версии Windows по линейкам + хронология

Линейка Годы Перечисление версий
16 бит 1985 - 1995 Windows 1 / 2 / 3
32 бита
(9x)
1995 - 2001 Windows 95 / 98 / ME
NT
(32 и 64 бита)
с 1993 Windows NT 3.1 / NT 3.5 / NT 3.51 / NT 4.0 Workstation / 2000 / XP / Vista / 7 / 8 / 8.1 / 10
NT Servers
(32 и 64 бита)
с 1993 Windows NT 3.1 / NT 3.5 / NT 3.51 / NT 4.0 Server / 2000 Server / 2003 / 2003 R2 / 2008 / 2008 R2 / 2012 / 2012 R2 / 2016 / 2019

История успеха

Данная история успеха отражает частоту использования системы; количество глюков, с которыми столкнулись пользователи; отзывы.

Windows 1 Неудача
Windows 2 Нейтрально
Windows 3 Успех
Windows 95 Неудача
Windows 98 Успех
Windows Millenium Провал
Windows 2000 Нейтрально
Windows XP Большой успех
Windows Vista Провал
Windows 7 Успех
Windows 8 Провал
Windows 8.1 Неудача
Windows 10 Успех

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

Windows 1

Годы поддержки: 1985 - 2001. Ветка: 16 бит.

Издания: -

Что нового

До Windows 1 был MS-DOS, поэтому самое главное новшество — графический интерфейс и возможность управления при помощи мыши.

Системные требования

Windows 3

Годы поддержки: 1990 - 2008. Ветка: 16 бит.

Издания: -

Что нового

  • Первый (от Microsoft) удобный для пользователя интерфейс.
  • Появление диспетчера программ.
  • Появление мультимедийных возможностей.
  • Поддержка сети (с 3.1).

Системные требования

Windows NT 3.1

Издания: -

Что нового

  • Первая система на базе ядра NT.
  • Поддержка файловой системы NTFS .

Системные требования

Процессор Intel 80386
Оперативная память 2 Мб
Объем жесткого диска 8 Мб

Windows NT 3.5 Workstation

Издания: -

Что нового

  • Встроенная поддержка Winsock и TCP/IP .
  • Появление сервероа и клиента DHCP и WINS.
  • Поддержка VFAT.

Системные требования

Процессор 33 МГц
Оперативная память 12 Мб
Объем жесткого диска 70 Мб

Windows NT 3.51 Workstation

Издания: -

Системные требования

Windows NT 4.0 Workstation

Издания: -

Системные требования

Windows 98

Годы поддержки: 1998 - 2006. Ветка: 9x (32 бита).

Системные требования

Windows Millenium

Годы поддержки: 2000 - 2006. Ветка: 9x (32 бита).

Системные требования

Windows 2000

Годы поддержки: 2000 - 2010. Ветка: NT.

Системные требования

Windows XP

Редакции: XP, XP Professional

Системные требования

Windows Vista

Годы поддержки: 2006 - 2017. Ветка: NT. Разрядность: 32 и 64 бита.

Издания: Начальная (Starter), Домашняя базовая (Basic), Домашняя расширенная (Premium), Бизнес (Business), Корпоративная (Enterprise), Максимальная (Ultimate)

Системные требования

Windows 7

Годы поддержки: 2009 - 2020. Ветка: NT. Разрядность: 32 и 64 бита.

Издания: Начальная (Starter), Домашняя базовая (Home Basic), Домашняя расширенная (Home Premium), Профессиональная (Professional), Корпоративная (Enterprise), Максимальная (Ultimate)

Системные требования

Минимальные Рекомендуемые
Архитектура 32-бит 64-бит 32-бит 64-бит
Процессор 1 ГГц
Оперативная память 1 Гб 2 Гб 4 Гб
Объем жесткого диска 16 Гб 20 Гб 16 Гб 20 Гб

Windows 8

Годы поддержки: 2012 - 2016. Ветка: NT. Разрядность: 32 и 64 бита.

Системные требования

Минимальные Рекомендуемые
Архитектура 32-бит 64-бит 32-бит 64-бит
Процессор 1 ГГц
Оперативная память 1 Гб 2 Гб 4 Гб
Объем жесткого диска 16 Гб 20 Гб 16 Гб 20 Гб

Windows 8.1

Годы поддержки: 2013 - 2023. Ветка: NT. Разрядность: 32 и 64 бита.

Издания: 8, 8 Профессиональная (Pro), 8 Корпоративная (Enterprise)

Системные требования

Минимальные Рекомендуемые
Архитектура 32-бит 64-бит 32-бит 64-бит
Процессор 1 ГГц
Оперативная память 1 Гб 2 Гб 4 Гб
Объем жесткого диска 16 Гб 20 Гб 16 Гб 20 Гб

Windows 10 (последняя для персональных компьютеров)

Годы поддержки: 2015 - 2025. Ветка: NT. Разрядность: 32 и 64 бита.

Издания

  • Домашняя (Home). Для большинства домашних компьютеров. Нет возможности настроить удаленный рабочий стол для того, чтобы к систему можно было подключиться удаленно; нет возможности использования групповых политик и присоединения к домену.
  • Профессиональная (Pro). Содержит все функции домашней версии + возможность присоединения к домену, использования групповых политик, возможность подключения к компьютеру с использованием удаленного рабочего стола.
  • Корпоративная (Enterprise). Урезаны некоторые функции домашней версии. Есть все дополнительные функции версии Pro + DirectAccess, AppLocker.
  • S. Является урезанной версией; предустановлена на некоторые устройства. Не поддерживает стандартную установку приложений — возможна установка только из магазина Windows.

Что нового

Windows 10 претерпевает сильные изменения с выходом новых билдов. Поэтому нововведения будем рассматривать исходя из этого.

  • Улучшенная производительность.
  • Новый встроенный браузер Microsoft Edge.
  • Автоматическое сжимание соседнего окна, при прижимании активного окна в одной из сторон рабочего стола.
  • «Все приложения» в «Пуск» поддерживают отображение в 2048 элементов (раньше только 512).
  • Принудительная установка обновлений.
  • Использование виртуального голосового помощника Кортана.
  • Обновленный меню пуск — представляет из себя гибрид предыдущих версий и Windows 8 (вернулся старый вариант раскрытия, а в правой части появились плитки).
  • Возможность создания нескольких рабочих столов.
  • Отказ от плиточной системы Windows 8.
  • Возможность рукописного ввода (Windows Ink).
  • Идентификация с помощью веб-камеры.
  • Синхронизация с мобильного устройства уведомлений.
  • Изменение меню параметров системы.
  • Встроенная поддержка шлемов виртуальной реальности.
  • Игровой режим
  • По умолчанию предлагается командная строка в Powershell.
  • Доступ к классической панели управления скрыт из контекстного меню. Теперь его можно вызвать командой control .
  • Улучшение работы встроенного антивируса.
  • Идентификация с помощью веб-камеры для Active Directory.
  • Возможность создавать скриншот с выделением области с помощью сочетания клавиш Win + Shaft + S.
  • Поддержка шрифта Брайля.
  • Увеличенное время работы от батареи.
  • Возможность работы Cortana на одном устройстве и окончание работы на другом.
  • Отключение протокола SMBv1. Включить можно вручную.
  • Появление панели «Люди».
  • Информация о GPU в диспетчере задач.
  • Полноэкранный режим Microsoft Edge
  • Увеличенное время работы от батареи (функция Power Throttling).
  • Появление панели эмодзи.
  • Выборочная синхронизация OneDrive.
  • Исправление проблемы торможения в играх.
  • Возможность восстановить пароль с помощью контрольных вопросов.
  • Темная тема для проводника.
  • Возможность получения доступа к сообщения с телефона (функция «Ваш телефон»).
  • Изолированный рабочий стол для безопасного запуска приложений.

* данный список содержит часть нововведений. Полный список на странице в Википедии .

Системные требования

Минимальные Рекомендуемые
Архитектура 32-бит 64-бит 32-бит 64-бит
Процессор 1 ГГц
Оперативная память 1 Гб 2 Гб 4 Гб
Объем жесткого диска 16 Гб 20 Гб 16 Гб 20 Гб

Windows NT 3.1 Advanced Server

Годы поддержки: 1993 - 2001. Ветка: NT. Разрядность: 16, 32 и 64 бита.

Издания: -

Системные требования

Процессор Intel 80386
Оперативная память 2 Мб
Объем жесткого диска 8 Мб

Windows NT 3.5 Server

Годы поддержки: 1994 - 2001. Ветка: NT. Разрядность: 16, 32 и 64 бита.

Издания: -

Что нового

  • Встроенная поддержка Winsock и TCP/IP .
  • Появление сервероа DHCP и WINS.
  • Предоставление общего доступа к файлам и принтерам.
  • Поддержка VFAT.

Системные требования

Процессор 33 МГц
Оперативная память 16 Мб
Объем жесткого диска 70 Мб

Windows NT 3.51 Server

Годы поддержки: 1995 - 2001. Ветка: NT. Разрядность: 16, 32 и 64 бита.

Издания: -

Системные требования

Процессор 33 МГц
Оперативная память 16 Мб
Объем жесткого диска 70 Мб

Windows NT 4.0 Server

Годы поддержки: 1996 - 2004. Ветка: NT. Разрядность: 32 и 64 бита.

Издания: Server, Enterprise Edition, Terminal Server

Системные требования

Windows 2000 Server

Годы поддержки: 2000 - 2010. Ветка: NT. Разрядность: 32 и 64 бита.

Издания: Server, Advanced Server и Datacenter Server

Системные требования

Windows Server 2003

Годы поддержки: 2003 - 2015. Ветка: NT. Разрядность: 32 и 64 бита.

Издания: Web, Standard, Enterprise, Datacenter

Системные требования

Web, Standard, Enterprise:

Datacenter Edition:

Windows Server 2003 R2

Годы поддержки: 2005 - 2015. Ветка: NT. Разрядность: 32 и 64 бита.

Издания: Standard, Enterprise, Datacenter

Системные требования

Standard, Enterprise:

Datacenter Edition:

Windows Server 2008

Годы поддержки: 2008 - 2020. Ветка: NT. Разрядность: 32 и 64 бита.

Издания: Web, Standard, Enterprise, Datacenter, HPC, Storage, Itanium

Системные требования

Минимальные Рекомендуемые
Архитектура 32-бит 64-бит 32-бит 64-бит
Процессор 1 ГГц 1.4 ГГц 2 ГГц
Оперативная память 512 Мб 2 Гб
Объем жесткого диска 10 Гб 40 Гб

Windows Server 2008 R2

Годы поддержки: 2009 - 2020. Ветка: NT. Разрядность: 64 бита.

Издания: Foundation, Small Business, Web, Standard, Enterprise, Datacenter, HPC, Itanium

Системные требования

Windows Server 2012

Годы поддержки: 2012 - 2023. Ветка: NT. Разрядность: 64 бита.

Системные требования

Windows Server 2012 R2

Годы поддержки: 2013 - 2023. Ветка: NT. Разрядность: 64 бита.

Издания: Foundation, Essentials, Standard, Datacenter

Системные требования

Windows Server 2016

Годы поддержки: 2016 - 2026. Ветка: NT. Разрядность: 64 бита.

Издания: Essentials, Standard, Datacenter

Что нового

  • Лицензирование на физические ядра процессора (минимум 16).
  • Новый режим установки — Nano .
  • Появление контейнерной виртуализации.
  • OpenGL и OpenCL для RDP.
  • Шифрование виртуальных машин и внутреннего сетевого трафика.
  • Блочная репликация файловых хранилищ.

Системные требования

Windows Server 2019 (последняя для серверов)

Годы поддержки: 2018 - ?. Ветка: NT. Разрядность: 64 бита.

Издания: Standard, Datacenter

Что нового

  • Улучшенная безопасность — встроенные технологии Defender ATP и Defender Exploit Guard.
  • Windows Subsystem Linux (WSL) — контейнеры для поддержки проложений Linux.
  • Для построения кластера с четным количеством узлов в качестве диска-свиделетя может выступать USB-диск.

Система Windows NT не является дальнейшим развитием ранее существовавших продуктов. Её архитектура создавалась с нуля с учётом предъявляемых к современной операционной системе требований. Особенности новой системы,разработанной на основе этих требований,перечислены ниже.

    Стремясь обеспечить совместимость (compatible) новой операционной системы,разработчики Windows NT сохранили привычный интерфейс Windows и реализовали поддержку существующих файловых систем (таких,как FAT) и различных приложений (написанных для MS - Dos, OS/2 1.x, Windows 3.x и POSIX).Разработчики также включили в состав Windows NT средства работы с различными сетевыми средствами.

    Достигнута переносимость (portability) системы, которая может теперь работать как на CISC , так и на RISC - процессорах.К CISC относятся Intel - совместимые процессоры 80386 и выше;RISC представлены системами с процессорами MIPS R4000 , Digital Alpha AXP и Pentium серии P54 и выше.

    Масштабируемость (scalability) означает, что Windows NT не привязана к однопроцессорной архитектуре компьютеров, а способна полностью использовать возможности, предоставляемые симметричными мультипроцессорными системами. В настоящее время Windows NT может функционировать на компьютерах с числом процессоров от 1 до 32. Кроме того, в случае усложнения стоящих перед пользователями задач и расширения, предъявляемых к компьютерной среде требований, Windows NT позволяет легко

    добавлять более мощные и производительные серверы и рабочие станции к корпоративной сети. Дополнительные преимущества даёт использование единой среды разработки и для серверов,и для рабочих станций.

    Windows NT имеет однородную систему безопасности (security) удовлетворяющую спецификациям правительства США и соответствующую стандарту безопасности В2. В корпоративной среде критическим приложениям обеспечивается полностью изолированное окружение.

    Распределённая обработка (distributed processing) означает, что Windows NT имеет встроенные в систему сетевые возможности. Windows NT также позволяет обеспечить связь с различными типами хост - компьютеров благодаря поддержке разнообразных транспортных протоколов и использованию средств “клиент-сервер” высокого уровня,включая именованные каналы,вызовы удалённых процедур (RPC - remote procedure call) и Windows - сокеты.

    Надёжность и отказоустойчивость (reliability and robustness) обеспечивают архитектурными особенностями, которые защищают прикладные программы от повреждения друг другом и операционной системой. Windows NT использует отказоустойчивую структурированную обработку особых ситуаций на всех архитектурных уровнях, которая включает восстанавливаемую файловую систему NTFS и обеспечивает защиту с помощью встроенной системы безопасности и усовершенствованных методов управления памятью.

    Возможности локализации (allocation) представляют средства для работы во многих странах мира на национальных языках, что достигается применением стандарта ISO Unicod (разработан международной организацией по стандартизации).

    Концепции Windows NT

Операционная система Windows NT реализована в двух вариантах: Windows NT Server и Windows NT Workstation. Windows NT Server 4.0 - сетевая операционная система с приложениями для Internet, сервисами файлов и печати, службой удаленного доступа, встроенным маршрутизатором, индексированием файлов и управлением сетью. Второй вариант Windows NT - Windows NT Workstation 4.0 во многом напоминает NT Server, но она оптимизирована в качестве операционной системы для рабочей станции. С точки зрения архитектуры и возможностей Windows NT Server является надмножеством Windows NT Workstation и включает в себя все возможности последней. Далее, в случаях когда не указывается, какая из ОС имеется в виду, комментарии относятся к обеим.

    Истоки Windows NT

Начало работ по созданию Windows NT приходится на конец 88го года. Microsoft поручила Дэвиду Катлеру (David Cutler) возглавить новый проект в области программного обеспечения: разработку ОС новой технологии (New Technology - NT). Дэвид Катлер был главным консультантом фирмы DEC, он проработал в этой фирме 17 лет, разрабатывая ОС и компиляторы: VAX/VMS, ОС для MicroVAX I, OS RSX-11M, компиляторы VAX PL/1, VAX C.

Сначала Windows NT развивалась как облегченный вариант OS/2 (OS/2 Lite), который за счет усечения некоторых функций мог бы работать на менее мощных машинах. Однако со временем, увидев как успешно принимается потребителями Windows 3.0, Microsoft переориентировалась и стала разрабатывать улучшенный вариант Windows 3.1. Новая стратегия Microsoft состояла в создании единого семейства базирующихся на Windows операционных систем, которые охватывали бы множество типов компьютеров, от самых маленьких ноутбуков до самых больших мультипроцессорных рабочих станций.

Windows NT, как было названо следующее поколение Windowsсистем, относится к самому высокому уровню в иерархии семейства Windows. Эта операционная система, первоначально поддерживавшая привычный графический интерфейс (GUI) пользователя Windows, явилась первой полностью 32-разрядной ОС фирмы Microsoft. Win32 API - программный интерфейс для разработки новых приложений - сделал доступными для приложений улучшенные свойства ОС, такие как многонитевые процессы, средства синхронизации, безопасности, ввода-вывода, управление объектами.

Концептуальные преимущества Windows NT по сравнению с парой MS-DOS/Windows 3.1 были очевидны. Ее 32-битная основа вместе с истинными многозадачностью и многонитевостью существенно повышали потенциал системы.

Первые ОС семейства NT - Windows NT 3.1 и Windows NT Advanced Server 3.1 появились в июле 1993 года. Кодовое название следующей версии Windows NT 3.5 - Daytona, - совпадающее с названием скоростной трассы во Флориде, возможно, говорило о том, что ее главным достоинством является скорость. Действительно, производительность версии 3.5 возросла в 1,5 раза по сравнению в версией 3.1, и после ее появления многие корпоративные пользователи, которые отвергли версию 3.1 по тем или иным причинам, пересмотрели свое отношение к линии NT: в 1995 году доля Windows NT в своем секторе рынка возросла в 2 раза и составила 15%.

    Особенности версии Windows NT 4.0

В августе 1996 года вышла очередная версия Windows NT 4.0. Сначала предполагалось, что эта очередная версия Windows NT получит номер 3.52, однако ей был присвоен номер 4.0, который раньше упоминался в компьютерной прессе в связи с другой ожидаемой версией Windows NT, имеющей кодовое название Cairo. Возможно это говорит о том, что в этой последней версии (Windows NT 4.0) появилось так много новых важных свойств, которые требуют более значимых изменений в кодировке. Новшества, внесенные в Windows NT Server 4.0, в основном связаны с улучшением интерфейса пользователя, расширением поддержки Internet, появлением новых и модернизацией существующих инструментов администрирования и повышением производительности системы.

В Windows NT 4.0 было внесено много существенных изменений, среди которых наиболее значительными являются следующие:

    реализация интерфейса в стиле Windows 95;

    ориентировка в сторону Internet и intranet;

    архитектурные изменения, позволившие резко повысить производительность графических операций;

    модификация средств взаимодействия с NetWare - Gateway и клиент NCP поддерживают теперь NDS;

    поддержка многопротокольной маршрутизации;

    появление в Windows NT 4.0 эмулятора Intel"овских процессоров для RISC-платформ.

Имеются и другие улучшения в версии 4.0. Так, например, в Windows NT Server 4.0 значительно улучшена наращиваемость по сравнению с Windows NT Server 3.51, что позволяет достигать значительно более высокой производительности на компьютерах с 4 процессорами, а также обеспечивает линейный рост производительности на машинах с восемью и большим числом процессоров.

Производительность Windows NT Server 4.0 при работе в качестве сервера файлов также значительно возросла и превысила производительность Windows NT Server 3.51 по некоторым данным более чем в 2 раза.

Новые административные средства Windows NT могут работать удаленно на клиентах Windows 95. Кроме того, Windows NT Server обеспечивает сервис удаленной загрузки для клиентов Windows 95. (Это полезно для бездисковых рабочих станций.)

В Windows NT 4.0 использован новый графический интерфейс с пользователем в стиле Windows 95. Хотя некоторым пользователям такая перемена не всегда нравится, но этим Microsoft восстанавливает принцип "единого интерфейса для всех платформ", который изначально считался одной из сильных сторон Windows NT. В сети с клиентскими станциями, работающими под управлением Windows 95 или Windows NT (а также в смешанной сети, включающей такие станции), администраторы Windows NT Server могут выполнять свои функции, применяя тот же интерфейс, что и пользователи рабочих станций.

Помимо внешних изменений, модернизация графического интерфейса не сильно отразилась на методах управления сетью. Базовый инструментарий администратора Windows NT Server остался прежним. Программы User Manager for Domains, Server Manager, Disk Administrator, Event Viewer, Performance Monitor, DHCP Manager, WINS Manager, Network Client Administrator, License Manager и Migration Tool for NetWare не претерпели существенных изменений. Remote Access Administrator также не изменился, но теперь он перенесен из отдельной папки в меню Administrative Tools. Новый редактор системной политики System Policy Editor, совместимый как с Windows NT, так и с Windows 95, заменил редактор профилей пользователей User Profile Editor, знакомый вам по версиям Windows NT Server 3.x. В версию 4.0 вошли четыре дополнения: административные программы-мастера Administrative Wizards, уже упоминавшийся System Policy Editor, а также расширенное средство Windows NT Diagnostics и программа Network Monitor (программа мониторинга работы сети, ранее поставлявшаяся только в составе продукта Microsoft Systems Management Server).

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

Windows NT 4.0 имеет несколько полезных системных компонентов для мониторинга, заимствованных у Systems Management Server компании Microsoft. Основное приложение - инструмент Performance Monitor, графически отслеживающий выбранные системные события. В частности Performance Monitor может быть использован для получения диаграмм загруженности ЦПУ, общего ввода/вывода сетевых плат и количества переданных байт по HTTP.

Другое приложение, Monitor Tool, также способно захватывать и отслеживать приходящий и уходящий с компьютера под NT сетевой трафик. Сценарий мониторинга (например, описание того, кадры каких протоколов требуется отследить, какие характеристики трафика измерить, от каких рабочих станций или пользователей) может быть сохранен и при необходимости использован заново.

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

Другие новшества в Windows NT Server 4.0 связаны, в основном, с Internet и intranet. Важное место среди них занимают следующие, вошедшие в комплект поставки, программные компоненты:

    Internet Information Server (IIS) версии 2.0 - продукт Microsoft, предоставляющий услуги Web-, ftp- и gopher-сервера, возможности Internet Information Server сравнимы, а по ряду тестов и превосходят аналогичный популярный продукт Server Netscape. Microsoft Internet Information Server 2.0, является самым быстрым сервером Web для Windows NT Server - он на 40 процентов превосходит производительность своего предшественника - версию 1.0;

    Объектная модель распределенных компонентов - Distributed Component Object Model (DCOM), которая обеспечивает безопасную связь между компонентами через Internet;

    DNS/WINS Server, который позволяет легко находить в Internet или intranet-сетях нужные Web-узлы;

    технология PPTP (point-to-point tunneling protocol), которая расширяет функциональность сервера удаленного доступа Windows NT Server (RAS) и обеспечивает возможности создания частных сетей в Internet;

    программа FrontPage, которая позволяет создавать Web-страницы на основе разнообразных шаблонов, проверять правильность ссылок и осуществлять общее управление создаваемыми Web-узлами;

    индексный сервер Microsoft Search Server, который позволяет легко находить информацию на распределенных серверах intranet-сети в рамках любых документов, в том числе и созданных в Microsoft Office.

Два средства новой системы, предназначенные для работы в Internet, представляют особый интерес для администраторов. Во-первых, это служба имен DNS. Она позволяет использовать DNS-имена, но поддерживает только статическую адресацию. Для снятия этого ограничения Microsoft предлагает интеграцию служб DNS и WINS, назвав это сочетание "истинно динамической DNS". Теперь, когда клиенту WINS нужно определить IP-адрес, соответствующий символьному NetBIOS-имени, он обращается сначала к базе данных WINS, а затем - собственно к DNS. Таким образом, в системе на равных можно применять и динамически распознаваемые имена WINS, и статические имена DNS.

Кроме того, в состав Windows NT 4.0 вошла Web-ориентированная утилита администрирования, открывающая доступ к средствам администрирования Windows NT из любого Web-броузера. Из соображений безопасности для удаленного администрирования следует использовать Web-броузеры, способные регистрировать пользователя непосредственно на сервере Windows NT (т. е. такие, как Internet Explorer) или поддерживать протокол SSL.

Одно из усовершенствований связано с тем, что повышающаяся роль Internet"а и клиент-серверных систем ведет к росту числа мобильных пользователей. Microsoft в связи с этим улучшила RAS (улучшила поддержку ISDN) и предоставила средства безопасной работы с RAS через Internet. В RAS реализованы протоколы PPTP (создает зашифрованный трафик через Internet) и Multilink PPP (позволяет объединять несколько каналов в один). Клиентами могут быть Windows NT 4.0 Workstation или Windows 95.

Распределенная модель объектной компоновки (Distributed Component Object Model) - еще одно ключевое дополнение к Windows NT Server 4.0. Модель объектной компоновки (COM) позволяет разработчикам программ создавать приложения, состоящие из отдельных компонент. Распределенная модель (DCOM) в Windows NT Server 4.0 расширяет COM таким образом, что позволяет отдельным компонентам взаимодействовать через Internet. DCOM является растущим стандартом Internet, опубликованным в соответствии с форматом, определенным в спецификациях RFC 1543.

При разработке Windows NT 4.0 Microsoft решила пожертвовать стабильностью ради производительности. С этой целью были внесены изменения в архитектуру: библиотеки менеджера окон и GDI, а также драйверы графических адаптеров были перенесены из пользовательского режима в режим ядра. Это изменение означает отход от принятой в предыдущих версиях Windows NT 3.х концепции микроядра.

Перенос графической библиотеки и драйверов в область ядра повышает скорость выполнения графического ввода-вывода. Эти изменения особенно сказались на скорости выполнения приложений Win32, в то время как приложения Windows-16 и графические приложения DOS работают примерно также, как и в версии 3.5.

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

    Новые свойства Windows NT 5.0

В конце 1997 ожидается появление Windows NT 5.0 - усовершенствованной версии Windows NT. Это будет не только полностью 32-разрядная, но также и полностью объектно-ориентированная система. Основу Windows NT 5.0 составляет объектно-ориентированная файловая система, реализованная на базе стандарта OLE 2.0, которая позволяет хранить не файлы, а объекты. Объектно-ориентированный подход позволяет с наименьшими затратами обеспечивать корректность многочисленных копий данных, таких как документы, электронные таблицы, приложения и других видов информации, хранящихся на разных машинах сети.

Версия Windows NT 5.0 обещает много, и нововведения прежде всего коснутся следующих подсистем:

    Active Directory - глобальная справочная служба, которая развивает 2-х уровневый подход к разрешению имен DNS. Active Directory содержит информацию не только о файлах, но и об объектах других типов, например:

    Имя компьютера, IP-адрес, Имя пользователя, пароль, почтовый адрес, Имя приложения, компьютер, версия, права доступа.

    Distributed File System (Dfs) - распределенная файловая система (свободно доступна на www.microsoft.com). Каталоги этой файловой системы, находящиеся на разных серверах, монтируются в общее дерево, начинающееся на корневом сервере с корневым share-именем. Различные поддеревья одного share могут состоять из файловых систем не только Microsoft, но и Novell NCP и Sun NFS. Некоторые ветви распределенной файловой системы могут по желанию администратора реплицироваться прозрачным образом.

    Distributed Component Object Model (DCOM) - программные объекты (ActiveX или другие) могут распределяться по серверам сети и вызываться приложениями с любого компьютера. Информация о месте расположения объектов регистрируется в Active Directory.

    Средства обеспечения безопасности: проверка прав доступа к документам в системе Windows NT 5.0 будет осуществляться по методу Kerberos или с помощью электронной подписи, а передача документов по сети будет реализована с использованием шифрования.

    Требования к аппаратуре

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

Для работы Windows NT Workstation 4.0 компьютер должен иметь процессор не ниже i486 (в этой версии системы корпорация Microsoft отказалась от какой-либо поддержки процессоров i386), ОЗУ емкостью не менее 12 Мбайт и 108 Мбайт дискового пространства. И хотя эта ОС вполне работоспособна на компьютерах, имеющих оперативную память менее 16 Мбайт, однако рекомендуется устанавливать ее при наличии ОЗУ, емкость которого вдвое превышает допустимый минимум, т. е. составляет 24 Мбайт, а свободное дисковое пространство равно, по крайней мере, 216 Мбайт. Запустить Windows NT Workstation 4.0 можно и на системе, обладающей меньшими ресурсами, но тогда вряд ли пользователь останется доволен ее производительностью.

Для Windows NT Server 4.0 Microsoft определяет следующие аппаратные требования: процессор не ниже i486, ОЗУ емкостью 16 Мбайт и не менее 148 Мбайт непрерывного свободного дискового пространства. Для ознакомления с функциональными возможностями системы это, возможно, и достаточно, но для "промышленного" использования этих минимальных требований явно недостаточно. Для сервера с низкой или средней загруженностью (определяется числом обслуживаемых пользователей) необходимо наличие 32 Мбайт оперативной памяти и жесткого диска емкостью не менее 1 Гбайт.

Полный список аппаратуры, прошедшей тестирование на совместимость с Windows NT, содержится в документации к системе и на сервере www.microsoft.com .

    Области использования Windows NT

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

Клиентами в сети с Windows NT Server могут являться компьютеры с установленными на них различными операционными системами. Стандартно поддерживаются: Windows NT Workstation, MS-DOS, OS/2, Windows for Workgroups, Windows 95, клоны UNIX, Macintosh. Основные клиенты входят в стандартную поставку Windows NT Server.

Windows NT Server является мощной платформой для сложных сетевых приложений, особенно тех, которые построены с использованием технологии клиент-сервер. В сочетании с серверами BackOffice он может удовлетворить очень широкий круг потребностей корпоративных пользователей. Так, под управлением Windows NT Server может работать сервер баз данных SQL Server фирмы Microsoft, а также серверы баз данных других известных фирм, такие как серверы баз данных Oracle и Sybase, Adabas и InterBase.

На платформе Windows NT Server может быть установлена мощная система администрирования Microsoft System Management Server, функциями которой является инвентаризация аппаратной и программной конфигурации компьютеров сети, автоматическая установка программных продуктов на рабочие станции, удаленное управление любым компьютером и мониторинг сети.

Windows NT Server может использоваться как сервер связи с мэйнфреймами IBM и системами IBM AS400. Для этого создан специальный продукт Microsoft SNA Server, позволяющий легко объединить в одной сети IBM PC-совместимые рабочие станции и мощные мейнфреймы. SNA Sever является шлюзом, позволяющим осуществлять доступ к рабочей станции как к серверам локальной сети, так и к мэйнфреймам без необходимости использования двух сетевых карт или нескольких стеков сетевых протоколов. Это приводит к снижению стоимости оборудования и уменьшению объема требуемой оперативной памяти. Обеспечивая прозрачный доступ к мэйнфреймам, SNA Server, будучи интегрированным с системой безопасности NT Server, обеспечивает авторизацию доступа к хосту. SNA Server может работать с любым из протоколов, поддерживаемых в NT Server: IPX/SPX, TCP/IP или NetBEUI.

Windows NT Server является платформой для Microsoft Exchange - нового высоко производительного пакета для коллективной работы, построенного на основе почтового сервера.

Наконец, последняя версия Windows NT 4.0 является надежной платформой для приложений, ориентированных на Internet: Web-серверов, Web-броузеров, информационно-поисковых систем, систем электронной коммерции в сети Internet.

Операционная система Windows NT Workstation позиционируется прежде всего как клиент в сетях Windows NT Server, а также в сетях NetWare, Unix, Vines. В сетях NetWare рабочие станции Windows NT восполняют известный пробел - отсутствие хорошего сервера приложений. Компьютер с установленной на нем Windows NT может быть рабочей станцией и в одноранговых сетях, выполняя одновременно функции и клиента, и сервера. Windows NT Workstation может применяться в качестве ОС автономного компьютера, если необходимы повышенная производительность или секретность, а также при реализации сложных графических приложений, например, в системах автоматизированного проектирования.

В конце 88-го года Microsoft поручила Дэвиду Катлеру (David Cutler) возглавить новый проект в области программного обеспечения: создать новую операционную систему корпорации Microsoft для 1990-х годов. Он собрал команду инженеров для разработки системы новой технологии (New Technology - NT).

Первоначально планировалось разработать NT с пользовательским и программным (API) интерфейсами в стиле OS/2, однако OS/2 плохо продавалась, а Windows 3.0 имела большой и постоянный успех на рынке. Увидев рыночные ориентиры и сложности, связанные с развитием и поддержкой двух несовместимых систем, Microsoft решила изменить свой курс и направить своих инженеров в сторону стратегии единой цельной операционной системы. Эта стратегия состяла в том, чтобы разрабатывать семейство базирующихся на Windows операционных систем, которые охватывали бы множество типов компьютеров, от самых маленьких ноутбуков до самых больших мультипроцессорных рабочих станций. Так, следующее поколение Windows-систем было названо Windows NT.

Windows NT поддерживает графический интерфейс (GUI) Windows, а также является первой базирующейся на Windows операционной системой фирмы Microsoft, поддерживающей Win32 API, 32-х битный программный интерфейс для разработки новых приложений. Win32 API делает доступными для приложений улучшенные свойства операционной системы, такие как многонитевые процессы, синхронизацию, безопасность, I/O, управление объектами.

В июле 1993 года появились первые операционные системы семейства NT - Windows NT 3.1 и Windows NT Advanced Server 3.1.

Версии

  • Windows NT 3.1 (27 июля 1993 г.)
  • Windows NT 3.5 (21 сентября 1994 г.)
  • Windows NT 3.51 (30 мая 1995 г.)
  • Windows NT 4.0 (24 августа 1996 г.)
  • Windows 2000 (17 февраля 2000 г.)
  • Windows XP (25 октября 2001 г.)
  • Windows XP 64-bit Edition (28 марта 2003 г.)
  • Windows Server 2003 (25 апреля 2003 г.)
  • Windows XP Media Center Edition 2003 (18 декабря 2003 г.)
  • Windows XP Media Center Edition 2005 (12 октября 2004 г.)
  • Windows XP Professional x64 Edition (25 апреля 2005 г.)
  • Windows Fundamentals for Legacy PCs (8 июля 2006 г.)
  • Windows Vista (30 ноября 2006 г.)
  • Windows Home Server (7 ноября 2007г.)
  • Windows Server 2008 (27 февраля 2008 г.)

Структура Windows NT

Структурно Windows NT может быть представлена в виде двух частей: часть операционной системы, работающая в режиме пользователя, и часть операционной системы, работающая в режиме ядра

Часть Windows NT, работающая в режиме ядра, называется исполнительной частью (executive). Она включает ряд компонентов, которые управляют виртуальной памятью, объектами (ресурсами), вводом-выводом и файловой системой (включая сетевые драйверы), взаимодействием процессов и частично системой безопасности. Эти компоненты взаимодействуют между собой с помощью межмодульной связи. Каждый компонент вызывает другие с помощью набора тщательно специфицированных внутренних процедур.

Вторую часть Windows NT, работающую в режиме пользователя, составляют серверы - так называемые защищенные подсистемы. Так как подсистемы автоматически не могут совместно использовать память, они общаются друг с другом посредством посылки сообщений. Сообщения могут передаваться как между клиентом и сервером, так и между двумя серверами. Все сообщения проходят через исполнительную часть Windows NT. Ядро Windows NT планирует нити защищенных подсистем точно так же, как и нити обычных прикладных процессов.

Поддержку защищенных подсистем обеспечивает исполнительная часть. Ее составными частями являются:

  • Менеджер объектов. Создает, удаляет и управляет объектами исполнительной части - абстрактными типами данных, используемых для представления ресурсов системы.
  • Монитор безопасности. Устанавливает правила защиты на локальном компьютере. Охраняет ресурсы операционной системы, выполняет защиту и регистрацию исполняемых объектов.
  • Менеджер процессов. Создает и завершает, приостанавливает и возобновляет процессы и нити, а также хранит о них информацию.

Менеджер виртуальной памяти.

  • Подсистема ввода-вывода. Включает в себя следующие компоненты:
    • менеджер ввода-вывода, предоставляющий средства ввода-вывода, независимые от устройств;
    • файловые системы - NT-драйверы, выполняющие файл-ориентированные запросы на ввод-вывод и транслирующие их в вызовы обычных устройств;
    • сетевой редиректор и сетевой сервер - драйверы файловых систем, передающие удаленные запросы на ввод-вывод на машины сети и получающие запросы от них;
    • драйверы устройств исполнительной части - низкоуровневые драйверы, которые непосредственно управляют устройством;
    • менеджер кэша, реализующий кэширование диска.

Исполнительная часть, в свою очередь, основывается на службах нижнего уровня, предоставляемых ядром NT. В функции ядра входит:

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

Ядро работает в привилегированном режиме и никогда не удаляется из памяти. Обратиться к ядру можно только посредством прерывания.

Защищенные подсистемы Windows NT работают в пользовательском режиме и создаются Windows NT во время загрузки операционной системы. Сразу после создания они начинают бесконечный цикл своего выполнения, отвечая на сообщения, поступающие к ним от прикладных процессов и других подсистем. Среди защищенных подсистем можно выделить подкласс, называемый подсистемами окружения. Подсистемы окружения реализуют интерфейсы приложений операционной системы (API). Другие типы подсистем, называемые интегральными подсистемами, исполняют необходимые операционной системе задачи. Например, большая часть системы безопасности Windows NT реализована в виде интегральной подсистемы, сетевые серверы также выполнены как интегральные подсистемы.

Наиболее важной подсистемой окружения является Win32 - подсистема, которая обеспечивает доступ для приложений к 32-bit Windows API. Дополнительно эта система обеспечивает графический интерфейс и управляет вводом/выводом данных пользователя.

Каждая защищенная подсистема работает в режиме пользователя, вызывая системный сервис исполнительной части для выполнения привилегированных действий в режиме ядра. Сетевые серверы могут выполняться как в режиме пользователя, так и в режиме ядра, в зависимости от того, как они разработаны.

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

Основным средством, скрепляющим все подсистемы Windows NT в единое целое, является механизм вызова локальных процедур (Local Procedure Call - LPC). LPC представляет собой оптимизированный вариант более общего средства - удаленного вызова процедур (RPC), которое используется для связи клиентов и серверов, расположенных на разных машинах сети.

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

Разработка 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, посмотрим, что будет дальше…