1. В.Г. Олифер Базовые технологии компьютерных сетей (ознакомительное качество) Высокое качество PDF, для печати :-)

  2. Михаил Гук. Интерфейсы ПК. Справочник (ознакомительное качество) Высокое качество PDF, для печати :-)


Главная Главная по Компьютерным сетям


Предыдущая | Оглавление | Следующая

Глава 21. Windows NT 4

Недавний поразительно быстрый рост популярности Windows NT послужил причиной горячих дебатов. Эта система заслужила множество эпитетов, начиная от «убийца NetWare» и «очевидный наследник UNIX» и заканчивая «еще одна катастрофа Winter» или «много шума из ничего».

Пыль осела, но остался вопрос: «Что представляет собой Windows NT и почему эту систему следует либо не следует использовать?». Именно на него и попытаемся найти ответ в данной главе.

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

Краткая история Windows NT

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

РИСУНОК 21.1. Родословное дерево сетевых операционных систем Microsoft.

Первые сетевые операционные системы Microsoft

Компания Microsoft работает на рынке сетевых операционных систем гораздо дольше, чем представляет себе большинство пользователей. В начале 80-х годов возросшая популярность локальных сетей привела к созданию нового сегмента рынка персональных компьютеров - сегмента сетевых операционных систем. Сети UNIX, VMS и т.д. с централизованными совместно используемыми ресурсами успешно эксплуатировались лишь некоторое время. Возможность применения персональных компьютеров как для выполнения несложных вычислительных задач, так и для замены простых терминалов, подключаемых к центральной системе, оказалась достаточно заманчивой для компаний, приобретающих новые настольные компьютеры. Более того, оказалось, что коллективные сетевые соединения, устанавливаемые с помощью первых технологий Ethernet и Token Ring, позволяют персональным компьютерам совместно использовать такие ресурсы, как жесткие диски и принтеры.

В новом развивающемся сегменте рынка персональные компьютеры использовались для обслуживания приложений, удовлетворения файловых запросов и обработки очередей печати, что лишь способствовало быстрому росту популярности приложений для PC. Начали быстро распространяться такие операционные системы, как VINES от Banyan (созданная на базе UNIX System V) и NetWare от Novell (серверная операционная система, разработанная для платформ Intel). Компания Microsoft, пытаясь добиться успеха в этой области, разработала примитивное дополнение к MS-DOS, называемое MS-NET. Целью разработки являлось предоставление в DOS возможности совместного использования сетевых файлов и принтеров без необходимости запуска NetWare, VINES и других конкурирующих программных продуктов.

MS-NET обладала несколькими серьезными недостатками, самый серьезный из которых сводился к абсо-лютному согласию с DOS в вопросах поддержки многозадачности. В результате во время обработки сетевых запросов сервер MS-NET не только не мог обрабатывать инструкции или код, локально выполняемый на сервере, но также не мог обслуживать более одного серверного запроса одновременно. Именно этот недостаток существенно ограничил полезность, а следовательно, и популярность MS-NET. Хотя некоторые независимые разработчики (такие, например, как компания 3COM, партнер Microsoft в конкурентной борьбе против Novell на рынке программного обеспечения для локальных сетей) предприняли попытки (с различной стеленью успеха) расширить возможности MS-NET с помощью дополнительного кода, который позволил бы обойти ограничения, вносимые DOS, этот продукт так и не был признан на рынке.

Шаг по направлению к 0S/2

Компания Microsoft, тем не менее, не отступила от задуманного. Позже Microsoft и IBM, став партнерами, приступили к разработке OS/2, революционной настольной операционной системы для платформ Intel OS/2 создавалась с целью расширения популярности MS-DOS за счет предоставления новой, изначально графической среды. Новые возможности OS/2, кроме всего прочего, сделали ее конкурентоспособным кандидатом для распространения в качестве сетевой операционной системы. Microsoft еще более укрепила ее позиции, разработав приложение Microsoft LAN Manager (или просто LANMAN).

При разработке LAN Manager использовалась модель, подобная NetWare, - центральный высокопро-изводительный сервер, предоставляющий службы работы с файлами, принтерами и приложениями, и специализированное программное обеспечение для клиентов сети, запускаемое на каждой рабочей станции с OS/2 и DOS и позволяющее ей пользоваться преимуществами сетевых операционных систем. В LAN Manager использовался протокол NetBIOS, который был разработан IBM и обеспечивал высокоскоростные производительные службы (область действия которых ограничена размерами подсети). Вскоре IBM получила лицензию и на технологию LANMAN для своего серверного продукта IBM LAN Server, также построенного на базе OS/2.

Хотя незначительный объем продаж OS/2 разочаровал IBM, популярность LANMAN как серверной операционной системы и альтернативы для NetWare продолжала расти. Однако операционная система LANMAN не повлияла серьезным образом на преобладающее господство системы NetWare на рынке операционных систем.

Проект NT

Позже, в конце 80-х годов, компания Microsoft признала, что OS/2 содержит некоторые серьезные, практически неисправляемые недостатки. Эта операционная система была тесно связана с архитектурой процессоров Intel (будучи большей частью написана на ассемблере для процессора 286), много теряла из-за непопулярного пользовательского интерфейса и плохого положения на рынке. Она не обладала необходимой поддержкой разработчиков программного обеспечения и производителей аппаратных средств, и это сильно отличало ее от других операционных систем. Microsoft решила полностью передать разработку OS/2 компании IBM и самостоятельно заняться разработкой настольных сетевых операционных систем следующего поколения.

Для руководства новыми проектами Microsoft нанимает всемирно известного разработчика операционных систем Дэвида Кутлера (David Cutler), который был архитектором операционной системы VMS. Новый проект Microsoft получил название «NT», что является сокращением от «New Technology» (хотя один из наиболее интригующих и, возможно, неправдоподобных мифов того времени объясняет выбор Кутлером аббревиатуры «WNT» или «Windows NT» тем, что каждая из букв этого сокращения придумана путем добавления единицы к ASCII-коду букв сокращения «VMS», что подчеркивает тем самым его заслуги в создании этой операционной системы).

Windows NT разрабатывалась для поддержки скромного, но важного успеха серии продуктов LANMAN, а также как совершенная высокопроизводительная сетевая операционная система (см. раздел «Строение системы Windows NT» ниже в этой главе). В 1993 году первая версия Windows NT появилась на рынке программного обеспечения (см. список продуктов NT на рис. 21.2).

РИСУНОК 21.2. Время выпуска продуктов Windows NT.

Для своей новой операционной системы компанией Microsoft был выбран интерфейс Program Manager, который использовался ранее Microsoft Windows. Для синхронизации нумерации продуктов первая версия Windows NT была выпущена под номером 3.1, поскольку самая последняя к тому времени версия Microsoft Windows также имела номер 3.1. NT существовала в двух версиях: Windows NT Advanced Server (NTAS) устанавливалась на серверах сети NT, a Windows NT Workstation представляла собой мощную настольную операционную систему с функциональными возможностями и основным кодом Advanced Server.

Многие корпоративные пользователи были разочарованы в Windows NT 3.1. Хотя ее архитектура и строение производили впечатление, для Windows NT был необходим большой объем памяти и работала она достаточно медленно. Еще одной причиной этого недоверия являлась слабая аппаратная поддержка - производители оборудования не успели написать драйверы для нового программного продукта. Лишь после выхода следующей версии NT стала силой, с которой приходилось считаться.

Windows NT 3.5 была выпущена в 1994. Ее версия, предназначенная для использования на серверах, была переименована в Windows NT Server. Высокая производительность и улучшенная поддержка приложений, а также новая доменная структура NT сделали ее одной из самых популярных операционных систем - объемы продаж начали стремительно расти. Выпуск еще более усовершенствованной версии 3.51 был осуществлен в 1995 году.

Windows NT 4.0 была выпущена в конце 1996 года и сразу же увеличила объем продаж и популярность NT. Эта версия объединяла в себе улучшенную интеграцию с Internet и корпоративными сетями, повышенную производительность, отличную совместимость с другими операционными системами компании Microsoft (в частности, DOS и Windows 95) и новый интерфейс Windows Explorer, представленный ранее в Windows 95.

Строение системы Windows NT

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

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

n    Живучесть

В течение очень долгого периода настольные операционные системы обладали репутацией весьма неустойчивых. Некорректно работающие приложения или системные службы могли легко привести к блокировке или фатальному сбою всей системы либо к значительному снижению производительности и стабильности ее работы. Такая уязвимость совсем не подходит для высокопроизводительных сетевых операционных систем, которые должны обеспечивать работу критических сетевых служб или осуществлять интенсивные долговременные вычисления с минимальным риском отказа. Ведущие сетевые операционные системы прошлого, такие как UNIX, учитывали это обстоятельство. Остальные же пытались преследовать эту цель весьма сомнительными средствами, что снизило стабильность их работы и сузило спектр функциональных возможностей. NT изначально разрабатывалась как максимально устойчивая платформа для сетевых промышленных служб, поэтому система приобрела такие защитные функции, как приоритетная многозадачность и полная защита памяти. Кроме всего прочего, Windows NT использует новую современную файловую систему, известную под названием NTFS, которая была разработана для обеспечения эффективного, быстрого и отказоустойчивого доступа к дискам различных типов, от небольших винчестеров IDE до огромных массивов резервных SCSI-дисков (RAID). Кроме того, NTFS ведет журнал транзакций (transaction Reg), что позволяет избежать повреждения файловой системы в случае фатального сбоя.

n    Переносимость

Одним из основных преимуществ UNIX-подобных операционных систем считается возможность работы на многих платформах и полная независимость от производительности и конструктивных особенностей аппаратных средств различных изготовителей. Windows NT с самого начала задумывалась как абсолютно переносимая система, поэтому большая часть ее кода написана на легко переносимом языке С. Специфические функции и вызовы аппаратных средств обрабатываются специальным уровнем абстракции аппаратных средств (Hardware Abstraction Layer - HAL), модель которого проиллюстрирована на рисунке 21.3.

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

Такая переносимость позволяет Windows NT работать на платформах с процессорами Intel x.86, Digital Equipment Corporation и MIPS RISC. С выходом NT 3.51 эта поддержка была распространена и на процессоры IBM Motorola Power PC. Однако, руководствуясь собственными соображениями, компания Microsoft ограничила поддержку различных платформ лишь до процессоров Intel х.86 и DEC Alpha. Несмотря на это, NT по-прежнему обладает переносимостью, достаточной для использования будущих поколений процессоров.

РИСУНОК 21.3. Модель уровня абстракции аппаратных средств (HAL).

n    Совместимость

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

Во-первых, NT достигает высокого уровня совместимости с различным программным обеспечением. Основной программный интерфейс Windows NT, Win 32 API, практически одинаков для всех 32-разрядных платформ Microsoft. Это значительно облегчает создание 32-разрядных приложений, работающих как под управлением новейших настольных операционных систем Windows (Windows 95 и ожидаемой Windows 97), так и под управлением Windows NT. Под Windows NT может работать большинство 16-разрядных приложений, разработанных для защищенного режима Windows 3.1x. Таким образом достигается высокий уровень обратной совместимости и одновременно исключается возможность фатального сбоя системы или 32-разрядных приложений и служб. Еще одной замечательной особенностью NT является возможность запуска POSIX.l-совместимых приложений. Для этого необходимо лишь перекомпилировать данный программный продукт для конкретной аппаратной платформы. Наконец, под управлением этой операционной системы могут работать приложения, написанные для OS/2 1.x.

Во-вторых, способность NT предоставлять услуги с помощью нескольких сетевых протоколов придает гибкость, необходимую для интеграции и взаимодействия с сетями, работающими под управлением таких операционных систем, как NetWare, UNIX, DOS, Windows 3.1x и Windows 95, а также для установления и поддержки соединений Internet или корпоративной сети. Дополнительные программные продукты позволяют NT работать в качестве шлюза для таких объектов, как мэйнфреймы IBM SNA.

В-третьих, файловая система Windows NT, NTFS, поддерживает несколько связанных с файлом информационных потоков, что позволяет эмулировать различные типы файловых систем (включая структуру «вилка данных/вилка ресурса», используемую в платформах Macintosh). Кроме того, с помощью Windows NT можно получить доступ к разделу диска с файловой системой FAT (используемой MS-DOS, Windows и Windows 95) или HPFS (используемой OS/2). В результате система NT может без проблем обрабатывать файлы нескольких платформ, не влияя в процессе работы на их производительность.

n    Безопасность

Windows NT изначально обладает достаточным потенциалом для предоставления пользователям максимально безопасных сетевых служб. Объектно-ориентированная структура NT, а также интегрированный диспетчер безопасности аутентифицируют действия и процессы системы на предмет предоставления доступа, облегчая тем самым системным администраторам процесс определения прав и привилегий пользователей и служб. Windows NT 3.51 получила сертификат Red Book C3, свидетельствующий о высокой безопасности этой операционной системы. В ближайшее время предполагается выдать сертификат С3 и Windows NT 4.0.

n    Производительность

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

Именно для повышения системной производительности NT поддерживает симметричную многопроцессорную обработку (Symmetric Multi processing - SMP), позволяющую распределить потоки приложения на несколько процессоров. С увеличением количества процессоров производительность сети повышается.

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

Собственная файловая система NT, NTFS, поддерживает такие функциональные возможности, как эффективное кэширование на уровне данных и физическое размещение данных. Это позволяет в значительной степени повышать производительность операций ввода-вывода.

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

n    Возможность модернизации

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

После рассмотрения предъявляемых к проекту NT требований остаются невыясненными еще два вопроса; каким образом компания Microsoft решила все поставленные задачи и насколько хорошо они воплощены в жизнь? Ответить на них поможет более детальное рассмотрение системной архитектуры NT, с которым читатель сможет познакомиться в следующем разделе.

Системная архитектура NT

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

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

Один из важнейших моментов рассмотрения системной архитектуры NT сводится к осмыслению различий между пользовательским режимом (User Mode) и привилегированным режимом (Kernel Mode). В привилегированном режиме фрагмент кода имеет право выполнять любую команду процессора и, как правило, обладает доступом ко всем системным ресурсам. В пользовательском режиме фрагмент кода, напротив, обладает ограниченным набором функциональных возможностей и ресурсов, в результате чего снижается вероятность ухудшения стабильности из-за предоставления доступа ко всем ресурсам. Эти режимы являются абстрактными, хотя большинство современных процессоров действительно поддерживают два режима работы с различными привилегиями доступа (см. рис. 21.4).

РИСУНОК 21.4. Пользовательский и привилегированный режим.

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

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

ПРИМЕЧАНИЕ

Насколько возросла стабильность работы Windows NT 4.0 по сравнению с предыдущими версиями? В более ранних версиях серьезные проблемы в видеосистеме могли привести к сбою подсистемы Win32, с которой для доступа к системным службам работали все другие подсистемы приложений (более детально это описано в разделе «Подсистемы среды»). Следует заметить, что подобная проблема в NT 4.0 приведет скорее к фатальному сбою всей системы, а не только подсистемы Win32. Между двумя типами сбоев существует небольшая практическая разница. Дело в том, что после отказа подсистемы Win32 пользователь не сможет выполнять задачи администрирования или запускать какие-либо приложения, хотя в целом система будет работать. В любом случае разработчикам драйверов и видеоадаптеров и принтеров необходимо тщательно их тестировать и отлаживать.

Объектно-ориентированная архитектура

Еще одной важной особенностью строения NT является использование модульных компонентов или объектов. Объекты представляют собой независимые высокоорганизованные фрагменты кода, содержащие процедуры и данные и поддерживающие абстрактный набор интерфейсов для работы с другими объектами и/или приложениями. Использование объектов позволяет значительно упростить процесс поддержки и модернизации программы, которая, в частности, может быть настолько же сложной, как и вся операционная система.

В качестве примера рассмотрим два способа обращения к файлам в операционной системе.

В необъектно-ориентированной операционной системе (схема которой приведена на рисунке 21.5) процедуры доступа к файлам на низшем уровне должны выполняться каждым компонентом операционной системы. Если по какой-либо причине разработчики будут вынуждены изменить принцип организации файлового доступа, придется переписать код всей ОС. Это довольно мучительный процесс, требующий немалых затрат времени на отладку. Опыт показывает, что именно на этом этапе разработчики чаще всего допускают ошибки, забывая модернизировать один из компонентов.

РИСУНОК 21.5. Все компоненты необъектной ОС должны уметь обращаться к файлам.

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

РИСУНОК 21.6. В случае использования объектов все алгоритмы доступа к файлам должны быть известны только специальным объектам.

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

Компоненты и архитектура операционной системы

После рассмотрения некоторых основных принципов построения архитектуры NT обратимся непосредственно к ее структуре. Структура NT и ее разбиение на различные компоненты и подсистемы представлены на рисунке 21.7.

РИСУНОК 21.7. Разбиение Windows NT4.0 на компоненты.

Начнем с рассмотрения самого нижнего уровня, а затем будем последовательно подниматься вверх.

Уровень абстракции аппаратных средств (HAL)

Как уже указывалось ранее, HAL выполняет задачу предоставления доступа к центральному процессору и другим аппаратным ресурсам, обеспечивая таким образом обобщенный интерфейс для высокоуровневых компонентов систем. В свою очередь, это приводит к максимальной переносимости системы. Для каждой платформы (Intel x86, Alpha и PowerPC) Windows NT предоставляет отдельный HAL. Кроме того, существуют еще и дополнительные уровни HAL, предлагаемые независимыми разработчиками для различных комбинаций аппаратных средств. Производители оборудования также создают для приложений различные HAL, устанавливаемые после инсталляции NT и позволяющие повысить производительность и надежность определенных аппаратных средств.

Ядро

Ядро Windows NT представляет собой микроядро. Это означает, что оно отвечает только за распределение и выполнение команд процессором или процессорами системы. Используя маленькое ядро, создателя NT надеялись улучшить показатели производительности и надежности системы. Дело в том, что ядро не может быть заменено любой другой частью ОС, поэтому очень важно, чтобы в нем сочетались такие качества, как производительность и высокая надежность. Именно ограничение функций ядра до выполнения наиболее важных задач позволило системе NT приобрести высокую стабильность. Эта часть ОС не отвечает за количество процессов, выполняемых в данный момент времени, и не следит за тем, кто их создал или уничтожил. Все эти задачи решаются выше, в управляющих службах NT (NT Executive).

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

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

Управляющие службы

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

n    Диспетчер ввода/вывода (I/O Manager)

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

ПРИМЕЧАНИЕ

Поскольку эта книга посвящена работе в сети, в разделе «Работа в сети Windows NT» рассмотрена сетевая модель операционной системы NT

Диспетчер ввода/вывода использует набор сконфигурированных администратором драйверов для управления соединениями со всеми аппаратными средствами. Поскольку такая работа непосредственно связана с оборудованием, соответствующие драйверы должны уметь блокировать HAL и напрямую связываться с устройствами. Это необходимо в тех случаях, когда HAL становится слишком громоздким и неудобным, негативно влияя на производительность работы.

n    Службы интерфейса графических устройств (Graphical Device Interface - GDI)

К GDI относятся службы, управляющие визуальным представлением и отображением данных. Они отвечают за работу как с видеоплатами, так и с принтерами. Для повышения стабильности работы в предыдущих версиях NT большинство служб GDI функционировало в пользовательском режиме, что, к сожалению, значительно снижало производительность.

Разработчики системы Windows NT 4.0 переместили все службы GDI в привилегированный режим и сильно уменьшили их влияние на производительность. Как уже указывалось ранее, хотя этот перенос и угрожает стабильности системы, влияние его на данную характеристику не так уж и значительно.

n    Средство вызова локальных процедур (Local Procedure Call Facility)

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

n    Диспетчер виртуальной памяти (Virtual Memory Manager)

Диспетчер виртуальной памяти управляет размещением и распределением страниц памяти приложений и буферных областей виртуальной памяти, которые могут состоять из быстрой оперативной памяти и более медленного, но большого файла подкачки. Все процессы Windows NT имеют доступ к виртуальной памяти объемом 4 Гб. Когда приложение получает доступ к виртуальной памяти, диспетчер виртуальной памяти (с помощью диспетчера ввода/вывода) перемещает страницы из оперативной памяти на диск (и обратно), а также обеспечивает виртуальный интерфейс аппаратных адресов. Процесс может манипулировать этими адресами, не имея представления о месте их расположения.

n    Диспетчер процессов (Process Manager)

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

n    Диспетчер безопасности (Security Reference Monitor)

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

n    Диспетчер объектов (Object Manager)

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

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

Подсистемы среды

Наиболее важными и наиболее распространенными модулями, запускаемыми NT в пользовательском режиме, являются подсистемы среды (Enviromental Subsystems). Такие подсистемы предлагают приложениям стандартный интерфейс для работы с нижерасположенными управляющими службами. Отдельные подсистемы могут быть созданы для поддержки API, моделей памяти и других особенностей, необходимых для работы приложения. В результате приложения, предназначенные для других операционных систем, могут быть запущены под управлением Windows NT.

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

РИСУНОК 21.8. Каждая подсистема в пользовательском режиме является приложением Win32.

Ни одно приложение Win32 не может получить доступ к адресному пространству другого, как, впрочем, не может пересекаться и ввод этих приложений. Поскольку каждое приложение Win32 изначально является многозадачным, ни одно из них не может получить доступ одновременно ко всем системным ресурсам или ограничить доступ к ним другого приложения.

Интерфейс Win32 API является стандартным для всех аппаратных платформ NT. В результате написанные для NT в Win32 приложения при переносе на какую-либо платформу необходимо лишь перекомпилировать.

ПРИМЕЧАНИЕ

Поддержка разработчиков для всех платформ, кроме Intel, является достаточно слабой. Исключением могут послужить, пожалуй, лишь самые базовые продукты (такие как пакет BackOffice).Чтобы хоть как-то обойти это ограничение, корпорация Digital Equipment разработала программу трансляции приложений Intel Win32, FXJ32. Когда приложение Win32, разработанное для платформы Intel, впервые запускается на Alpha, команды Intel с помощью эмулятора транслируются в эквивалентный код Alpha. Одновременно команды Win32, используемые приложением, преобразуются в двоичный код Alpha и сохраняются на диске. При последующих запусках приложения применяются инструкции Alpha, что значительно повышает производительность работы. В течение последнего времени на «родной код» Alpha переводится все большее количество приложений. Это приятное новшество значительно повышает интеграцию платформ Alpha и Windows NT.

Для запуска приложений других типов Windows NT содержит большое количество различных подсистем, каждая из которых является приложением Win32. К таким подсистемам относятся:

n    Подсистема Win16

Подсистема Winl6, или как ее еще называют вложенная система Windows (Windows On Windows - WOW), представляет собой приложение Win32, обеспечивающее виртуальный режим работы на машине DOS/Windows 3.1. В этой подсистеме могут работать 16-разрядные приложения MS-DOS и Windows 3.1x, причем им предоставляется доступ к интерфейсу Winl6 API и стандартным 16-разрядным моделям памяти Windows. В общем, все эти приложения отлично работают в подсистеме WOW. Единственным исключением являются приложения, осуществляющие прямой доступ к ресурсам аппаратных средств. Дело в том, что подобный доступ может влиять на стабильность и производительность работы системы (см. рис. 21.9).

Каждая подсистема Win 16 предоставляет полностью эмулированную версию машины DOS/Windows 3.1, «не забывая» о всех свойственных ей ограничениях. Приложения Winl6 запускаются в многозадачном режиме и могут совместно использовать один 16-разрядный пул виртуальной памяти. Приложение Winl6 вполне может привести к сбоям в работе другого приложения подсистемы или же к сбою всей подсистемы. Тем не менее поскольку приложение Winl6 представляет собой, по сути, еще одно приложение Win32, оно не сможет привести к фатальному сбою всей операционной системы или же каким-либо образом воздействовать на работу другого приложения Win32. Чтобы обеспечить дополнительную защиту от отказов при работе нескольких приложений Winl6, пользователи могут запускать каждое приложение Winl6 в отдельной подсистеме WOW.

РИСУНОК 21.9. Подсистема Win 16 с запущенным приложением Win 16.

ПРИМЕЧАНИЕ

Поскольку приложения Win16 написаны только для платформы Intel, версии NT 4.0 для других операционных систем запускают эмуляторы платформ Intel, что позволяет в дальнейшем запускать и сами приложения. Логично будет предположить, что производительность приложений Win16 на других платформах несколько снизится.

n    Подсистема OS/2

Подсистема OS/2 позволяет без перекомпиляции запускать под Windows NT приложения, написанные для OS/2 1.x. Эта поддержка существует только для платформ Intel и только для приложений командной строки, поскольку подсистема OS/2 не поддерживает интерфейс диспетчера представлений OS/2.

n    Подсистема POSIX

Подсистема POSIX позволяет запускать под управлением Windows NT приложения, написанные соответствии со стандартом POSIX.1, определяющим совместимость приложений для различных версий UNIX. Для полнофункциональной работы в NT POSIX.I-совместимые приложения должны быть еще раз откомпилированы для соответствующей платформы. Кроме того, NT поддерживает такие дополнительные возможности POSIX.1, как предоставление необходимых функций файловых систем, необходимых для работы приложений POSIX с файловой системой NTFS.

Системный реестр Windows NT

Еще одной жизненно необходимой частью архитектуры NT, пусть и не представленной на рис. 21.7, является системный реестр (Registry). Реестр Windows NT представляет собой динамически управляемую базу данных системы. Он используется для выполнения самых различных операций, включая работу с:

n    Текущим состоянием и установками аппаратных средств

n    Индивидуальными пользовательскими установками и настройками конфигурации

n    Настройками приложений

n    Установками операционной системы

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

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

Работа в сети Windows NT

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

Сетевой стек NT

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

На рисунке 21.10 представлена модель, используемая при построении сетевого стека NT.

РИСУНОК 21.10. Сетевой стек Windows NT.

В отличие от системной архитектуры NT, которая была рассмотрена снизу вверх, обсуждение стека начнем с верхнего уровня.

Самый верхний уровень включает сетевые программные интерфейсы API, которые состоят из действительных вызовов функций, используемых приложениями для установления через сеть соединений. Наиболее важным среди этих интерфейсов является NetBIOS (Network Basic Input/Output Interface - Базовый сетевой интерфейс ввода/вывода). Он представляет собой основной API, используемый при работе в сети NT или LANMAN. Когда система NT (или любая иная система) связывается с другой системой с помощью средств Microsoft, вызовы направляются именно к NetBIOS API. Этот интерфейс может через сетевой стек NT реализовать подобные операции и с помощью других протоколов (рассмотрено немного ниже). На этом же уровне находятся и все остальные API, такие, например, как Windows Sockets (или Winsock), представляющий стандартное TCP/IP соединение Internet или корпоративной сети, к которому пользователи могли привыкнуть при работе с UNIX или другой операционной системой.

Чуть ниже API находится компонент, известный под названием Transport Driver Interface (Интерфейс транспортного протокола) или просто TDI. Он записывает сетевые API, такие как NetBIOS, Winsock и другие, в независимой от протокола форме, что позволяет в дальнейшем привязать их к любому транспортному протоколу нижнего уровня.

Ниже TDI и расположены эти транспортные протоколы. Windows NT может использовать для работы в сети Microsoft/LAN MAN любой из трех основных протоколов:

n    NetBEUI

n    TCP/IP

n    IPX/SPX

NetBEUI (NetBIOS Extended User Interface) является протоколом, используемым только для работы в сети Microsoft/LANMAN. Это быстрый и эффективный сетевой протокол, разработанный для использования в небольших рабочих группах, функционирующих в одноранговых или малых серверных сетях. Этот протокол не поддерживает маршрутизацию, поэтому он подходит только для локальных сетей.

ПРИМЕЧАНИЕ

Многие пользователи путают термины NetBIOS и NetBEUI, однако даже если вы относитесь к их числу, то не расстраивайтесь, поскольку разницу между ними не ощущают даже многие администраторы систем NT.

NetBIOS, разработанный в 80-х годах, представлял собой сетевой протокол. Позже он был расширен и приобрел дополнительные функциональные возможности. Одновременно его переименовали в NetBEUI (NetBIOS Extended User Interface). Наконец, в конце 80-х NetBIOS и NetBEUI были окончательно разделены и NetBIOS стал обобщенным сетевым программным интерфейсом, a NetBEUI так и остался сетевым протоколом. В этих состояниях данные термины остаются и по сегодняшний день.

TCP/IP и IPX/SPX представляют собой протоколы, которые доступны для работы в сети Microsoft/LANMAN под управлением Windows NT. Широкое распространение они получили главным образом благодаря таким своим преимуществам, как возможность маршрутизации через различные сети. Кроме того, они очень часто используются и в других сетях, что позволяет сетевым администраторам создавать сети NT, оптимально соответствующие параметрам объединяемых локальных и глобальных сетей.

ПРИМЕЧАНИЕ

Фактически, если TCP/IP используется для сети Microsoft, то сетевой администратор может в качестве глобальной сети использовать подключение к Internet.

Протоколы TCP/IP и IPX/SPX «зашиты» в версии потокового интерфейса NT, первоначально предназначенного для UNIX System V. Этот интерфейс позволяет разработчикам интегрировать различные высокоуровневые и низкоуровневые сетевые протоколы в стандартный интерфейс.

Сразу же под транспортными протоколами расположен интерфейс NDIS. Его название является натурой от Network Driver Interface Specification (Спецификация интерфейса сетевого драйвера). Этот интерфейс обеспечивает еще большую гибкость сетевого стека NT, позволяя высокоуровневым транспортным протоколам свободно согласовываться с любым типом низкоуровневых канальных протоколов (таких как Ethernet Token Ring, CDDI и другие). Наконец, чуть ниже в иерархии находятся драйверы NDIS, написанные и специальных сетевых устройств. Абстракция, обеспечиваемая интерфейсом NDIS, позволяет этим драйверам связываться со всеми высокоуровневыми протоколами.

Сетевые модели Microsoft Windows

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

ПРИМЕЧАНИЕ

Прежде чем продолжить рассмотрение сетевых моделей Microsoft, следует разобраться в продуктах серии NT, т.е. понять различия между Windows NT Workstation и Windows NT Server.

Windows NT Workstation разрабатывалась как операционная система для отдельной настольной рабочей станции или как равноправный сервер для небольшой рабочей группы. Она может подключаться к любой другой операционной системе Microsoft (NT Server, NT Workstation, рабочей станции Windows 95, Windows for Workgroups и другим системам, совместимым с сетями Microsoft) NT Workstation, кроме того, может устанавливать соединения с другими операционными системами, для которых она имеет программы-клиенты. Это означает возможность (через интерфейс Winsock) использования таких приложений TCP/IP Internet или. корпоративной сети, как Telnet, FTP и браузер Web и, конечно же, подключения к серверам NetWare. Кроме того, Windows NT Workstation в состоянии обслуживать соединения, с другими системами Microsoft или клиентами Internet/корпоративной сети (даже если это рабочая станция Macintosh). К сожалению, одним из ограничений Windows NT Workstation является невозможность одновременной поддержки более 10-ти серверных соединений.

Windows NT Server, напротив, разрабатывалась как центральный сервер, предоставляющий доступ к файлам, принтерам, приложениям Internet или корпоративной сети. Она обладает всеми возможностями Windows NT Workstation, а кроме того, обладает дополнительными возможностями лицензирования и настройки производительности, специально предназначенными для использования в составе серверной операционной системы. NT Server также предоставляет службы аутентификации для Windows NT Domain.

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

РИСУНОК 21.11. Модель рабочей группы NT.

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

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

РИСУНОК 21.12. Модель домена NT.

База данных безопасности домена NT поддерживается на сервере Windows NT, который выступает в роли первичного контроллера домена (Primary Domain Controller - PDC). Для обеспечения отказоустойчивости и возможности расширения домена NT может также использоваться и резервный контроллер домена (Backup Domain Controller - BDC). Он представляет собой сервер NT, содержащий все элементы основной базы данных домена и предоставляющий доступ к ней в режиме «только для чтения». Аутентифицируя запрос, сервер может проверять базу данных на любом резервном контроллере точно так же, как и на первичном. Такая организация позволяет снизить нагрузку на первичный контроллер домена (см. рис. 21.13). Кроме того, если по какой-либо причине выйдет из строя PDC, то BDC сможет в любой момент его заменить.

РИСУНОК 21.13. Первичный и резервный контроллеры доменов.

ПРИМЕЧАНИЕ

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

Более того, домены могут осуществлять сквозную аутентификацию (pass-through autentification) пользователей других доменов через доверительное отношение (trust relationship). Это позволяет устанавливать между доменами безопасные соединения, благодаря чему появляется возможность передать запросы на аутентификацию к контроллеру домена, ответственному за бюджет данного пользователя. В режиме доверительных отношений ресурсы совместно используются несколькими организациями, принципы централизованной аутентификации пользователей остаются незыблемыми.

Интеграция NT с другими сетевыми операционными системами

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

n    NetWare

Windows NT 4.0 поставляется с приложением Client for NetWare Networks, которое позволяет подключаться к серверам NetWare, используя аутентификацию через базу регистрационных данных (Bindery) или NDS. Дополнительные программные продукты, разрабатываемые Microsoft, предоставляют серверу NT возможность работы в качестве сервера базы регистрационных данных NetWare 3.x, что позволяет клиентам NetWare пользоваться его ресурсами.

n    Macintosh

На рабочих станциях и серверах Windows NT могут запускаться службы для Macintosh, позволяющие использовать файлы и принтеры совместно с клиентами Macintosh, работающими с протоколом AppleShare. Тем не менее пользователи NT не могут подключаться к клиентам Macintosh без дополнительных программных продуктов (либо Client AppleShare for NT, разработанным Apple, либо других продуктов, позволяющих Macintosh совместно использовать ресурсы через протоколы стандарта LAN MAN).

n    Службы UNIX для работы в Internet и корпоративной сети

Служба Windows Sockets в Windows NT позволяет системе подключаться через протокол TCP/IP к таким стандартным службам Internet или корпоративной сети, как Telnet, FTP, WWW и т.п. Кроме того, в состав Windows NT Server входит приложение Internet Information Service (IIS), с помощью которого сервер NT может работать в качестве промышленного сервера WWW, FTP или Gopher Доступные программные продукты независимых разработчиков (например, Netscape) также предоставляют доступ к службам Internet или корпоративной сети, a Windows NT Workstation содержит облегченную версию IIS для работы со службами корпоративной сети.

Программные продукты позволяют системам NT более непосредственно взаимодействовать с рабочими станциями и серверами UNIX, использующими такие службы, как X-Windows и NFS. Существует также программное обеспечение для клиентов системы UNIX, например, условно-бесплатный продукт SAMBA, с помощью которого машины UNIX могут интегрироваться в рабочие группы и домены NT для совместного использования файлов и принтеров систем Microsoft.

n    Другие сетевые операционные системы

В состав Windows NT входит протокол DLC, используемый многими мэйнфреймами IBM и принтерными серверами Hewlett-Packard JetDirect. Именно благодаря этому протоколу клиенты NT могут быть подключены к таким платформам. Существуют приложения, которые позволяют серверам NT функционировать в роли шлюзов для сетей IBM SNA. В качестве примера можно привести Microsoft SNA Server.

Windows NT предлагает своим пользователям широкий набор самых различных функций и служб для установления сетевых соединений.

Высокопроизводительная работа в сети Windows NT

Улучшенная сетевая модель Windows NT позволяет имитировать работу большого количества других сетевых систем. Диапазон доступных средств для некоторых передовых технологий несколько проигрывает по сравнению с доступными средствами системы UNIX, которая является платформой de facto для развертывания высокоскоростных сетей. Тем не менее большинство высокопроизводительных сетевых технологий могут быть использованы и под Windows NT.

Возможно, самой простой и наиболее популярной из всех высокоскоростных технологий является 100-Мбитный Ethernet. С Windows NT совместимы драйверы и интерфейсные платы всех 100-Мбитных технологий, включая 100base-T.

Поскольку все стандарты и спецификации для ATM достаточно упорядочены, поддержка программного обеспечения для Windows NT осуществляется на достаточно высоком уровне. Многие ведущие производители, такие как Digital и 3COM, предлагают интерфейсные платы для установки соединения ATM непосредственно с сервером или рабочей станцией Windows NT, что позволяет использовать их в качестве главной машины сети или сервера данных.

Платформы NT позволяют проводить видеоконференции в режиме многоадресной рассылки. Наиболее популярный программный продукт данного типа, бета-версия MBONE, обеспечивает работу клиентов и серверов Windows NT. Для получения дополнительной информации об использовании MBONE в Windows NT следует обратиться на Web-страницу ICAST по адресу http://www.icast.com. Кроме того, для работы под NT доступны и другие системы видеоконференций, такие как пакет CUSeeMe, и системы от таких производителей, как Intel Corporation.

Следует ли все-таки использовать Windows NT

Рассмотрев историю возникновения Windows NT, ее структуру и возможности, у вас наверняка остается еще один вопрос: Чем NT может быть полезна для вас?

Чтобы ответить на этот вопрос следует, во-первых, оценить в отдельности NT Workstation и NT Server. NT Workstation - это очень мощная, безопасная и стабильная операционная система рабочей станции. Благодаря комбинации интуитивного графического интерфейса и большого количества программного обеспечения (библиотека программ для Microsoft Windows является самой большой в мире) NT Workstation представляет собой отличное решение для настольного компьютера, на котором выполняются самые различные операции, от простейшей автоматизации в офисе (работа с текстами, таблицами и т.п.) до разработки программного обеспечения для таких сложных вычислительных задач, как моделирование трехмерной графики и статистическая обработка. Комбинация стабильности работы, производительности и огромного выбора аппаратных средств (особенно для платформ Intel) делает ее довольно привлекательной альтернативой более дорогим настольным рабочим станциям UNIX (Windows NT в состоянии достичь более высокой производительности при запуске на мощных платформах Alpha), как, впрочем, и более совершенной и надежной альтернативой для компьютеров Windows и Macintosh. Поскольку все больше современных сетевых продуктов начинает работать под NT, замена систем UNIX на NT будет разумным решением. Установка Windows NT Workstation на настольных компьютерах проходит практически безболезненно для многих, а особенно для организаций, уже работающих с операционными системами Microsoft.

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

n    Контроллера домена Microsoft

n    Сервера файлов и принтера

n    Сервера приложений

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

n    Сервер Internet или корпоративной сети

Благодаря удачному соотношению стоимость/производительность серверы NT все чаще используются в качестве систем доступа к World Wide Web, FTP и другим службам Internet. Большинство самых популярных Web-серверов, включая серверы Microsoft, работают под NT Server с IIS либо программными продуктами независимых разработчиков для Web-серверов. Серверы NT могут также функционировать как многопротокольные маршрутизаторы серверов DNS и обеспечивать работу других служб сетей TCP/IP.

n    Сервер обмена сообщениями

Многие программные продукты, организующие обмен сообщениями в группе пользователей, начиная от простых серверов SMTP и заканчивая интегрированными продуктами вроде Microsoft Exchange и Lotus Notes, могут работать на серверах Windows NT.

Выступая в такой роли, сервер NT может полностью заменить простые серверы, на которых работают другие операционные системы, такие как UNIX и NetWare.

Несмотря на то, что компания Microsoft пытается переубедить всех в обратном, UNIX и NetWare все еще находят себе достаточное применение. К некоторым из недостатков NT относятся:

n    NT не является действительно многопользовательской операционной системой.

С первого взгляда такое заявление может показаться немного странным. Ведь Windows NT работает как многозадачная система и может обслуживать одновременно несколько сетевых соединений или пользователей сети. Да, именно это она и делает. Тем не менее NT не разрабатывалась для обеспечения более одного одновременного интерактивного сеанса. Машины UNIX часто используются для предоставления нескольким пользователям возможности подключения с помощью эмуляторов терминалов (таких как Telnet) и обеспечения работы интерактивных сеансов в системе для выполнения вычислительных задач.

n    Windows NT использует сложную архитектуру.

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

n    Windows NT является относительно недоработанным программным продуктом.

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

n    Windows NT недостаточно расширяема

Windows NT не может предложить такую же степень масштабируемости, как многие другие ведущие операционные системы. Например, NT поддерживает работу только четырех процессоров в блоке, и хотя серверы, использующие четыре процессора Pentium Pro или Alpha, представляют собой очень мощные машины, иногда возникает необходимость использования огромных мегасерверов с большим количеством процессоров, а также объемом памяти и дискового пространства. Для использования на таких серверах NT уже не подходит. Кроме того, Windows NT является 32-разрядной операционной системой, а для обработки некоторых, хотя и очень редко встречаемых больших массивов данных могут потребоваться производительность и возможности доступа 64-разрядной операционной системы. Безусловно, будущие версии NT будут соответствовать всем этим требованиям, однако на данный момент времени эта операционная система не в состоянии обслуживать мегасерверы или серверы параллельных вычислений.

n    Windows NT предназначена для использования на аппаратных средствах Intel.

Хотя Windows NT доступна на многих аппаратных платформах, большая часть поддержки разработчиков направлена именно на платформы Intel (медленно начинает расширяться поддержка для DEC Alpha). Компания Microsoft недавно отказалась от поддержки процессоров MIPS и PowerPC, поэтому все следующие версии можно будет использовать только для Intel и Alpha. С другой стороны, увеличивающий диапазон процессоров Intel (включая Pentium, Pentium Pro и процессоры ММХ) предлагает самые различные соотношения цена/производительность, а компьютеры DEC Alpha по-прежнему являются самыми быстрыми в мире, что делает их удачным выбором для решения задач любого уровня сложности. Как бы там ни было, NT не подходит для тех организаций, которые собираются использовать широкий спектр платформ.

Резюме

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


Предыдущая | Оглавление | Следующая



Сайт создан в системе uCoz