Операционные системы Windows NT/2000/XP
Компания Microsoft в 1990 году объявила о начале работ по созданию принципиально новой операционной системы для персональных IBM PC-совместимых компьютеров с прицелом на корпоративный сектор, которая помимо банальной мультизадачности и поддержки виртуальной памяти обладала бы, в частности, такими качествами, как:
· микроядерная архитектура — сказалось влияние идей проекта Mach 3, выполненного в университете Карнеги Меллон (Carnegie Mellon University), которое в то время было очень велико;
· аппаратная независимость (platform independent), что должно было обеспечить легкую переносимость системы;
· мультипроцессорная обработка и масштабируемость (в то время операционные системы семейства UNIXобеспечивали работу на мультипроцессорных компьютерах и фактически доминировали как мощные корпоративные серверные системы);
· возможность выполнения приложений, созданных для других операционных систем, в частности приложений для UNIX и 16-разрядных программ OS/2;
· защита информации и вычислений от несанкционированного доступа;
· наличие высокопроизводительной и надежной файловой системы и возможность работать с несколькими файловыми системами;
· встроенные сетевые функции и поддержка распределенных вычислений.
Однако Windows NT 3.1 в качестве рабочей станции уступала системе OS/2, поскольку требовала существенно больше оперативной памяти и имела относительно низкое быстродействие. Кроме этого, при работе с дисками, отформатированными под файловую систему FAT, она не поддерживала длинные имена.
Системы Windows NT 3.x не смогли тогда завоевать признание ни в качестве серверных, ни в качестве обычных настольных систем, поскольку требовали очень больших (по меркам того времени) вычислительных ресурсов.
Как ни странно, но еще одним недостатком этих первых систем Windows NT было гтоогое следование идеям микроядерной архитектуры. Желая исправить эти недочеты, Microsoft запустила проект Cairo и в 1996 г. выпустила операционные системы Windows NT 4.0 Server и Windows NT 4.0 Workstation.
К сожалению, в своей новой операционной системе компания Microsoft отказалась от поддержки высокопроизводительной файловой системы HPFS, с которой работают операционные системы OS/2, хотя при желании пользователь мог сам добавить соответствующие драйверы из дистрибутива предыдущей Windows NT 3.x.
Желая противопоставить свою серверную операционную систему известным сетевым операционным системам корпоративного уровня Nowell Netware 4.x и Netware 5х, компания Microsoft разработала новое семейство операционных систем класса NT, которое должно было изначально называться Windows NT 5.0, однако из маркетинговых соображений было переименовано в Windows 2000. В семейство этих систем вошли четыре операционные системы.
· Windows 2000 Professional — для использования в качестве рабочей станции вместо Windows NT 40 Workstation или Windows 98. Эта операционная система может работать на 2-процессорных компьютерах.
· Windows 2000 Server— для использования в качестве контроллера домена и/или сервера (файлов, приложений, баз данных, web и/или FTP, печати и т. д.) в относительно небольшой сети, которую могут себе позволить иметь предприятия малого и среднего бизнеса. Эта операционная система поддерживает 4-процессорные конфигурации.
· Windows 2000 Advanced Server — для тех же целей, что и Windows 2000 Server, но с упором на выполнение функций сервера приложений и сервера баз данных. Обладает возможностью работать на компьютере с восемью процессорами и, самое главное, организовать кластер из двух машин.
· Windows 2000 Datacenter Server — специальная версия операционной системы, предназначенная для работы в вычислительных сетях крупных предприятий. Система хорошо масштабируется, позволяет построить 4-узловой кластер, причем каждая из машин может иметь вплоть до 16 процессоров.
Наверное, самыми главными особенностями этих операционных систем (по сравнению с предыдущими Windows NT 4.0) следует назвать поддержку механизма Plug and Play (как и в системах Windows 9х) и использование службы каталогов как основы для построения сетей клиент-сервер. Служба каталогов Microsoft, получила наименование Active Directory. Принципиальной особенностью этой технологии является ее глубокая интеграция с ТСР/IP.
Осенью 2001 года Microsoft обновила операционную систему Windows 2000 Professional до Windows ХР (eXPerience). При этом она выпустила две редакции. Одна из них представляла собой «облегченный» вариант системы для домашнего применения. Она получила название Windows ХР Home Edition. Системы Windows XP в еще большей мере стали мультимедийными и ориентированными на Интернет. Интересным новшеством для систем Windows стала возможность организовать одновременную работу с компьютером двух пользователей: для одного непосредственно (локально), а для второго удаленно с другого компьютера.
Наконец, весной 2003 года на замену семейству Windows 2000 вышли несколько серверных операционных систем, которые получили в название число 2003. Это следующие 32-разрядные операционные системы для микропроцессоров с архитектурой iа-32.
· Windows Small Business Server 2003 — предназначена для построения небольших локальных вычислительных сетей.
· Windows Server 2003 Web Edition — это самая «облегченная» система, она не может выступать в роли контроллера домена и быть сервером приложений.
· Windows Server 2003 Standard Edition — основная многоцелевая операционная система, пришедшая на смену Windows 2000 Server.
· Windows Server 2003 Enterprise Edition — аналог Windows 2000 Advanced Server.
· Windows Server 2003 Datacenter Edition.
Последние две операционные системы имеют разновидности для 64-разрядных процессоров Itanium 2 производства компании Intel.
Ничего революционного эти системы не привнесли, но существенно обновили предыдущие серверные операционные системы. В качестве основных особенностей новых систем Microsoft отмечает упрощение администрирования, более безопасную инфраструктуру и более высокую надежность, интеграцию в системы активно продвигаемой технологии NET (произносится как «дот нет»).
^ Основные особенности архитектуры
Наиболее принципиальным отличием между системами класса Windows 9х и Windows NT является то, что у них разная архитектура.
Большинство операционных систем использует такую особенность современных процессоров, как возможность работать в одном из двух режимов: привилегированном (режиме ядра, или режиме супервизора) и пользовательском (режиме выполнения приложений).
Поскольку при. создании Windows NT разработчики хотели обеспечить ее мобильность, то есть легкую переносимость на другие платформы, они приняли решение использовать только два уровня привилегий из четырех, имеющихся в микропроцессорах Intel семейства i80x86.
Одним из важнейших компонентов операционных систем Windows NT/2000/XP, который появился вследствие следования микроядерному принципу их построения, является исполняющая система (Win32 Executive). Она выполняет такие базовые функции операционной системы, как управление процессами и потоками, управление памятью, взаимодействие между процессами, защиту, операции ввода-вывода (включая файловые операции, кэширование, работу с сетью и некоторые другие). Ниже перечислены компоненты исполняющей системы.
· Диспетчер процессов (Process Manager) создает, отслеживает и удаляет процессы. Для выполнения этих функций создается соответствующий дескриптор, определяются базовый приоритет процесса и карта адресного пространства, создается и поддерживается список всех готовых к выполнению потоков.
· Диспетчер виртуальной памяти (Virtual Memory Manager) предоставляет виртуальную память выполняющимся процессам. Каждый процесс имеет отдельное адресное пространство, используется страничное преобразование линейных адресов в физические, поэтому потоки одного процесса не имеюг доступа к физическим страницам, отведенным для другого процесса.
· Диспетчер объектов (Object Manager) создает и поддерживает объекты. В частности, поддерживаются дескрипторы объектов и атрибуты защиты объектов. Объектами считаются каталоги, файлы, процессы и потоки, семафоры и события и многие другие.
· Монитор безопасности (Security Reference Monitor) обеспечивает санкционирование доступа к объектам, контроль полномочий доступа и ведение аудита. Совместно с процессом входа в систему (logon) и защищенными подсистемами реализует модель безопасности Windows NT.
· Диспетчер ввода-вывода (Input/Output Manager) управляет всеми операциями ввода-вывода в системе. Организует взаимодействие и передачу данных между всеми драйверами, включая драйверы файловых систем, драйверы физических устройств, сетевые драйверы, для чего используются структуры данных, называемые пакетами запросив на ввод-вывод (I/O Request Packet, IRP). Запросы на ввод-вывод обрабатываются в порядке приоритетов, а не в порядке их поступления. Операции ввода-вывода квитируются, этим процессом управляет диспетчер кэша (Cache Manager). Поддерживаются различные файловые системы, причем драйверы этих систем воспринимаются диспетчером ввода-вывода как драйверы физических устройств. Специальное сетевое системное программное обеспечение (редиректор и сервер) трактуются как сетевые драйверы и также имеют непосредственную связь с диспетчером ввода-вывода.
· Средства вызова локальных процедур (Local Procedure Call, LPC) обеспечивают выполняющиеся подсистемы среды выполнения и приложения пользователей коммуникационным механизмом, в котором взаимодействие строится по принципу клиент-сервер.