что считается недостатком сетевых операционных систем netware

Что считается недостатком сетевых операционных систем netware

NetWare имеет некоторые преимущества по сравнению со своим конкурентом Windows NT Server 3.51. Это маршрутизация всех протоколов на сервере, удаленное управление самим сервером и эффективная поддержка клиентских станций, работающих под управлением DOS.

Более того, NetWare 4.1 обеспечивает поддержку ряда служб, необходимых для ОС сети масштаба предприятия. Например, служба справочника NetWare (NDS) стала мощным средством управления большими корпоративными сетями. Система безопасности включает функцию ограничения объема данных пользователя на томе сервера. Эта функция не реализована в Windows NT. Производительность NetWare при операциях с файлами и службами сетевой печати по-прежнему выше, чем у ее конкурентов, особенно в случае крупных разнородных сетей. По сравнению с другими сетевыми ОС, NetWare поддерживает большее число операционных сред клиентов, включая DOS, Windows, OS/2, Macintosh и UNIX.

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

Другие достоинства NetWare перечислены в таблице 1.3.

В настоящее время много публикаций посвящены компьютерным сетям масштаба предприятия. Так выглядит дословный перевод термина «EnterpriseWide Networks», получившего распространение в западной литературе. В отечественных материалах их чаще называют корпоративными сетями.

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

При решении второй и третьей задач можно использовать следующие продукты фирмы Novell: NetWare Multi Protocol Router v.3.0 (MPR), NetWare/IP, NetWare FLeX/IP 1.2c, NetWare NFS 1.2c.

Используя MPR, можно построить глобальную разнородную сеть на базе NetWare и РС-совместимых компьютеров. В одну сеть могут быть объединены сети, работающие по таким популярным протоколам как IPX, IP, AppleTalk, Novell NetBIOS, OSI, FTAM с использованием физических сред передачи Ethernet, Token Ring, ARCnet, FDDI, LocalTalk.

Продукт NetWare/IP обеспечивает полную интеграцию сетей NetWare в среду протокола TCP/IP. Он позволяет пользователям сетей, работающих по протоколу TCP/IP, использовать сети NetWare и приложения для них.

Пакеты NetWare FLeX/IP 1.2c и NetWare NFS 1.2c предназначены для использования в сетях, где требуется доступ пользователей UNIX к ресурсам NetWare (принтерам и файлам).

Четвертая задача имеет два аспекта: программный и аппаратный. С точки зрения сетевого программного обеспечения сеть должна выглядеть для пользователя единым пулом разнообразных ресурсов. Пользователю не важно, какой из серверов предоставляет ему те или иные ресурсы. Это позволяет администратору системы более гибко распределять ресурсы по имеющимся в наличии серверам, упрощает и повышает эффективность контроля и управления ресурсами сети. Для управления ресурсами сети во всех современных операционных системах выделяются специальные сервисы. В NetWare 4.х эту роль играют служба каталогов NetWare Directory Services (NDS) и системы управления сетями NMS (NetWare Management System) и ManageWise. С точки зрения аппаратных средств эту задачу можно сформулировать так: обеспечение эффективного доступа пула клиентов к пулу серверов. Практическим решением этой задачи является использование при построении кабельной системы так называемых активных элементов. К ним можно отнести локальные мосты, маршрутизаторы, шлюзы, а также устройства, использующие технологию Ethernet Switch, и FDDI-концентраторы.

Источник

wiki.vspu.ru

портал образовательных ресурсов

Содержание

Novell NetWare

„NetWare “ — это сетевая операционная система и набор сетевых протоколов, которые используются в этой системе для взаимодействия с компьютерами-клиентами, подключёнными к сети. Операционная система NetWare создана компанией Novell. NetWare является закрытой операционной системой, использующей совместную многозадачность для выполнения различных служб на компьютерах с архитектурой Intel x86. В основе сетевых протоколов системы лежит стек протоколов Xerox XNS. В настоящее время NetWare поддерживает протоколы TCP/IP и IPX/SPX. NetWare является одним из семейств XNS-систем. К таким семействам, например, относятся Banyan VINES и Ungerman-Bass Net/One. В отличие от этих продуктов и XNS, система NetWare заняла существенную долю рынка в начале 1990-х и выдержала конкуренцию с Microsoft Windows NT, после выпуска которой прекратили своё существование другие конкурирующие с ней системы.

В основу NetWare была положена очень простая идея: один или несколько выделенных серверов подключаются к сети и предоставляют для совместного использование своё дисковое пространство в виде «томов». На компьютерах-клиентах с операционной системой MS-DOS запускается несколько специальных резидентных программ, которые позволяют «назначать» буквы дисков на тома. Пользователям необходимо зарегистрироваться в сети, чтобы получить доступ к томам и иметь возможность назначать буквы дисков. Доступ к сетевым ресурсам определяется именем регистрации.

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

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

что считается недостатком сетевых операционных систем netware
Скриншот загрузки ОС.

Достоинства NetWare

NetWare имеет некоторые преимущества по сравнению со своим конкурентом Windows NT Server 3.51. Это маршрутизация всех протоколов на сервере, удаленное управление самим сервером и эффективная поддержка клиентских станций, работающих под управлением DOS.

Более того, NetWare 4.1 обеспечивает поддержку ряда служб, необходимых для ОС сети масштаба предприятия. Например, служба справочника NetWare (NDS) стала мощным средством управления большими корпоративными сетями. Система безопасности включает функцию ограничения объема данных пользователя на томе сервера. Эта функция не реализована в Windows NT. Производительность NetWare при операциях с файлами и службами сетевой печати по-прежнему выше, чем у ее конкурентов, особенно в случае крупных разнородных сетей. По сравнению с другими сетевыми ОС, NetWare поддерживает большее число операционных сред клиентов, включая DOS, Windows, 2, Mac OS и Что такое линукс.

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

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

Система NetWare доминировала на рынке сетевых операционных систем с середины 80-х годов до конца 90-х благодаря чрезвычайно высокой производительности по сравнению с другими сетевыми операционными системами. Большинство сравнительных тестов в то время указывали на преимущество в производительности в соотношении от 5:1 до 10:1 по сравнению с продуктами Майкрософт, Banyan и других компаний. Результаты одного сравнительного теста были особенно интересны: система NetWare 3.x со службами NFS, работающими по протоколам TCP/IP (не по разработанному для NetWare протоколу IPX), сравнивалась с дорогостоящим выделенным сервером Auspex NFS и с сервером SCO Unix с запущенными службами NFS. Производительность NetWare NFS превысила производительность обоих систем NFS, являющихся частью соответствующих операционных систем, и превысила в два раза производительность SCO Unix NFS на одинаковом оборудовании.

Было несколько причин такой производительности NetWare.

Службы файлов вместо дисковых служб

К середине 1980-х годов большинство сетевых операционных систем стали использовать модель служб файлов вместо модели дисковых служб. Сейчас происходит возврат к модели дисковых служб, например в SAN.

Эффективность протокола NCP

Большая часть сетевых протоколов, использовавшихся во времена разработки NetWare, не считали надёжной доставку сообщений сетью. Обычно операция чтения файла клиентом выполнялась следующим образом.
# Клиент отправлял запрос на сервер.
# Сервер подтверждал получение запроса.
# Клиент подтверждал получение подтверждения.
# Сервер отправлял запрошенные данные клиенту.
# Клиент подтверждал получение данных.
# Сервер подтверждал получение подтверждения.
В основе же протокола NCP лежала концепция надёжной доставки пакетов сетью в большинстве случаев. Поэтому ответ на запрос служил в большинстве случаев подтверждением. Пример запроса чтения клиента в данной модели.
# Клиент отправлял запрос на сервер.
# Сервер отправлял запрошенные данные клиенту.
Все запросы содержали последовательный номер, поэтому если клиент не получал ответа в течение указанного времени, он отправлял запрос повторно с тем же последовательным номером. Если сервер уже обрабатывал этот запрос, он отправлял кешированный ответ повторно. Если у сервера не было времени на обработку запроса, он отправлял «положительное подтверждение», что означало «я получил запрос, но ещё не дошёл до его обработки, не беспокойте меня».

Результатом использования этой модели «надёжной сети» было уменьшение на две трети сетевого трафика и связанных с ним задержек.

Операционная система без вытесняющей многозадачности, разработанная для сетевых служб

В 90-х годах интенсивно сравнивалось выполнение операций сетевых файловых служб специальным программным обеспечением в обычной операционной системой с выполнением тех же операций специализированной операционной системой. NetWare была специализированной операционной системой, не операционной системой с поддержкой режима разделения времени. Она была полностью написана для обработки запросов типа «клиент-сервер». Изначально система была ориентирована на службы файлов и печати, но позже продемонстрировала отличные унаследованные возможности в качестве платформы баз данных, систем электронной почты, веб-сервисов и других служб. Она также эффективно работала в качестве маршрутизатора протоколов IPX, TCP/IP и AppleTalk, хотя никогда не претендовала на гибкость, присущую аппаратным маршрутизаторам.

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

Возможно, основной причиной успеха Novell в 80-х и 90-х годах была более эффективная работа NetWare по сравнению с операционными системами общего назначения. Однако по мере увеличения мощности микропроцессоров значение эффективности становилось всё меньше и меньше, а с появлением процессора Pentium сложность управления и разработки приложений для NetWare стали перевешивать преимущества NetWare. Самоуверенность маркетингового подразделения и руководства Novell на фоне реальной угрозы конкурентов (NT4 и Microsoft Exchange) стало последней каплей в процессе, который в конце концов привёл к потере позиций системой NetWare.

что считается недостатком сетевых операционных систем netware
Пример запущенных приложений в ОС.

Нынешнее состояние

В данный момент разработка ОС NetWare компанией Novell была прекращена и знаменовалось это новостью прогремевшей в августе 2003 года:
что считается недостатком сетевых операционных систем netware На следующий день после того, как компания Novell завершила сделку по приобретению Ximian, компании, занимающей адаптацией Linux для пользовательского сегмента, стало известно, что Novell отказывается от дальнейшего развития собственной операционной системы NetWare.

Её место займёт Linux: такие решения, как eDirectory и Secure Identity Management отныне будут работать на базе дистрибутивов Linux Red Hat и SuSE.

По словам руководителей Novell, поддержка NetWare в обозримом будущем прекращаться не будет, так что конечные пользователи особо не пострадают. По крайней мере, в ближайшее время.

Стоит отметить, что ещё год назад Novell декларировала крайне враждебное отношение к Linux, предпочитая ему UNIX-решения. Теперь же руководство компании уверяет всех, что Linux и открытое ПО — это будущее всей отрасли вообще, и их компании, в частности.

Эти заявления можно рассматривать и как политические: Novell является одним из самых активных участников скандала вокруг прав на Linux, заявленных компанией SCO Group.

SCO утверждает, что является владельцем всех патентов на UNIX, в то время как то же самое говорит Novell.

Источник

Операционная система NetWare

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

Во второй теме рассматриваются архитектура и принципы функционирования ОС NetWare 3.x и 4.x. Отдельно приведены особенности управления основной и внешней памятью в ОС NetWare 4.х. Подробно освещены сетевые возможности NetWare (IPX/SPX, SAP, RIP, NCP, NLSP и т. д.). Приводятся способы обеспечения расширяемости и открытости для интеграции с другими системами, способы обеспечения надежности (уровни SFT). Изучаются способы обеспечения высокой производительности, а также механизмы защиты файловой системы и дерева NDS. Дополнительно обсуждаются варианты интернационализации диалоговых интерфейсов.

Третья тема посвящена вопросам администрирования и оперативного управления ОС. Излагается организация пользовательской операционной среды рабочей станции и файлового сервера. Затронуты вопросы администрирования информационной среды. Отдельно рассмотрены особенности управления сетевыми ресурсами в ОС NetWare 4.х (глобальный каталог сетевых ресурсов NDS, миграция с Bindery в NDS). Дан обзор команд оперативного управления файловым сервером. Кроме того, рассмотрены средства наблюдения и контроля за состоянием системы.

Четвертая тема посвящена вопросам разработки сетевых приложений для NetWare. Здесь приведены структура модулей NLM и правила их написания. Дается обзор клиентских и сетевых примитивов NetWare.

В заключительной, пятой теме, рассматриваются различные решения подключения сети NetWare к Internet. Подробно освещаются вопросы инсталляции Web-сервера фирмы Novell, его настройки и использования. Приводятся особенности создания статических и динамических HTML-документов. Рассматриваются продукты, входящие в состав IntranetWare, и преимущества их использования.

Источник

Что считается недостатком сетевых операционных систем netware

Для управления сетью разрабатываются специальные сетевые операционные системы, которые по своей организации можно разделить на одноранговые (Peer-To-Peer Network) и с выделенным файловым сервером (Dedicated File Server Network).

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

Рис. 1.1. Пример загрузки модулей одноранговой сети

Загрузка в оперативную память (ОП) рабочей станции модулей сервера обеспечивает доступ других пользователей к ресурсам этого компьютера. А наличие модулей клиента позволяет пользователю иметь доступ к ресурсам других рабочих станций сети.

Указанные группы программ могут использоваться в различных сочетаниях. Так рабочие станции (WorkStation) WS1 и WS2 (рисунок 1.1) могут выступать в качестве серверов, т.е. их ресурсами могут пользоваться другие станции. А станции WS1 и WS3 имеют доступ к другим компьютерам сети.

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

Таблица 1.1. Преимущества и недостатки одноранговых ОС

Преимущества

Недостатки

Простота инсталляции.
Обеспечивают доступ к ресурсам других рабочих станций.

Низкая производительность сети. Это объясняется небольшой мощностью рабочих станций.
Имеют ограниченные возможности по обеспечению связи удаленных сегментов сети.
Отсутствуют развитые средства управления сетью.
Не обеспечивают режим работы СУБД «клиент-сервер».

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

Рис. 1.2. Пример сегмента сети с выделенным сервером

Рабочие станции могут функционировать под управлением различных ОС: MS DOS, OS/2, UNIX, Macintosh, Windows NT Workstation.

В таблице 1.2 перечислены основные преимущества и недостатки ОС с выделенным сервером.

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

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

Таблица 1.2. Преимущества и недостатки ОС с выделенным сервером

Преимущества

Недостатки

Высокая производительность сети за счет использования файлового сервера большой мощности.
Наличие развитых аппаратных и программных средств связи удаленных сегментов сети и рабочих станций.
Наличие развитых средств управления и администрирования в сети.
Обеспечивают режим работы СУБД «клиент-сервер».

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

Признанными лидерами сетевых ОС с выделенным сервером являются Windows NT Server 3.51 и NetWare 3.x,4.x.

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

Источник

Что считается недостатком сетевых операционных систем netware

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

Способы повышения производительности

Плоская модель памяти

NetWare работает в защищенном режиме CPU (protected mode), используя все преимущества 386, 486 процессоров и Pentium, связанные с 32-разрядной адресацией памяти.

Нити и невытесняющая многозадачность

Другим преимуществом защищенного режима является возможность выполнять несколько программ одновременно. Часто это называют многозадачностью (multitasking). В NetWare реализован механизм «нитей» (thread), который позволяет использовать все преимущества расщепления одного процесса на несколько параллельно выполняемых нитей. Этот механизм описан в разделе 1.2.4 главы 1. NetWare обеспечивает удобные средства для реализации многонитевых процессов.

Существует несколько вариантов реализации алгоритма диспетчирования нитей. NetWare использует метод невытесняющей многозадачности (nonpreemptive multitasking). Это означает, что обычно невозможно прерывание приложений и их нитей другими приложениями и нитями. Иногда этот метод называют «окружением хороших парней», так как ожидается, что приложения будут вести себя вежливо по отношению к системным ресурсам. Фактически, если приложение не отдает периодически управление CPU, чтобы дать возможность другим приложениям выполняться, то будет работать только это приложение. Следовательно, при работе в таком режиме очень важно понимать последствия захвата CPU и быть «хорошим парнем» среди равных. Главным же преимуществом невытесняющей многозадачности является более быстрое переключение с нити на нить по сравнению с вытесняющей многозадачностью (preemptive multitasking), когда нить процесса прерывается в неожиданный и часто неудобный для нее момент времени, и ОС приходится сохранять гораздо больше информации о прерванном состоянии нити, чем в случае, когда нить сама отдает управление ОС.

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

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

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

Если на сервере имеется несколько дисковых каналов, то NetWare может параллельно осуществлять поиск данных на нескольких дисках (по одному диску на канал). Это существенно повышает производительность.

Способы обеспечения открытости и расширяемости

Рис. 7.1. Структура ОС NetWare

Способы обеспечения надежности

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

Средства обеспечения надежности уровней SFT I и SFT II реализованы в NetWare v3.11, NetWare v3.12 и NetWare v4.x. Уровень надежности SFT III реализован пока только в NetWare SFT III v3.11.

Защита информации

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

В 1983 году фирма Novell ввела в систему концепций локальной сети понятия имени пользователя, пароля и характеристики пользователя (user profile). Характеристика пользователя содержит перечень ресурсов, к которым пользователь имеет доступ, и права, которыми он обладает при работе с этими ресурсами. Администратор сети может ограничить права пользователя по входу в сеть датой, временем и конкретными рабочими станциями. Средства обнаружения нарушений защиты и блокировки действий нарушителя извещают администратора сети о попытках несанкционированного доступа.

В версии NetWare 3.12 пароли хранятся на сервере в зашифрованном виде. Пароль, задаваемый пользователем, передается по кабелю также в зашифрованном виде, что обеспечивает защиту от попыток узнать пароль путем «прослушивания» сети.

В версии NetWare 4.x использована более надежная схема идентификации пользователя при логическом входе в сеть, основанная на использовании технологии защиты RSA public key/private key. При использовании этой технологии пароль и личный ключ пользователя никогда не передаются по кабелям, что полностью исключает возможность узнать чужой пароль. В службу каталогов NDS также введен новый уровень управления доступом, который может быть введен в действие администратором в любой части сети.

С точки зрения защиты ОС NetWare не делает различия между операционными системами рабочих станций. Станции, работающие под управлением DOS, Windows, OS/2, Macintosh и UnixWare, обслуживаются совершенно одинаково, и все функции защиты применяются ко всем операционным системам, которые могут использоваться в сети NetWare.

Управление процессами

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

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

Рис. 7.2. Соотношение между глобальным, групповым и индивидуальным
контекстами нитей в NetWare

В среде NetWare различается три вида контекстов нитей: глобальный контекст, контекст группы нитей и контекст отдельной нити. Эти контексты вложены друг в друга, как это показано на рисунке 7.2. Соотношение между данными этих контекстов напоминает соотношение глобальных и локальных переменных в программе, написанной на языке C. Глобальный контекст является общим для всех нитей данного NLM’а, и все его переменные видны для всех его нитей. В NetWare можно создавать несколько групп нитей внутри одного NLM-процесса, и эти группы имеют свой групповой контекст. Все нити группы видят переменные контекста своей группы, но не видят переменных контекста другой группы. И, наконец, каждая отдельная нить имеет свой собственный контекст. Содержимое этого контекста доступно только для данной нити.

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

Кроме этих функций NetWare предоставляет средства синхронизации нитей с помощью семафоров и сигналов.

Планировщик NetWare использует несколько очередей для организации невытесняющей дисциплины обслуживания нитей (рисунок 7.3).

При создании нити с помощью функций BeginThread или BeginThreadGroup нить попадает в конец очереди RunList, которая содержит готовые к выполнению нити. После того, как выполнявшаяся на CPU нить завершает свою очередную итерацию с помощью одного из вызовов передачи управления (или вызова ожидания на семафоре), планировщик выбирает для выполнения стоящую первой в очереди RunList нить и запускает ее на выполнение. Нить, завершившая свою очередную итерацию, помещается в конец одной из очередей в зависимости от того, какой вызов передачи управления она использовала: в конец очереди RunList при вызове ThreadSwitch, в конец очереди DelayedWorkToDoList при вызовах ThreadSwitchWithDelay или Delay или же в конец очереди LowPriorityRunList при вызове ThreadSwitchLowPriority. Если же нить вообще завершила свою работу, выполнив функцию return() в главной функции нити (при создании нити в качестве параметра указывается функция, которая является главной функцией нити), то данная нить уничтожается.

Нити, находящиеся в очереди DelayedWorkToDoList, после завершения условия ожидания перемещаются в конец очереди RunList.

Нити, находящиеся в очереди LowPriorityRunList, запускаются на выполнения только в том случае, когда очередь RunList пуста. Обычно в эту очередь назначаются нити, выполняющую несрочную фоновую работу.

Рис. 7.3. Система очередей планирования NetWare

Очередь WorkToDoList является в системе самой приоритетной. Рабочие нити ОС выбирают работы из этой очереди, и эти нити обладают наивысшим приоритетом, то есть попадают на выполнение перед нитями из очереди RunList. Рабочие нити должны использоваться для выполнения очень срочных работ. Планировщик разрешает выполниться подряд только определенному количеству нитей из очереди WorkToDoList, а затем запускает нить из очереди RunList. Очередь WorkToDoList и связанные с ней функции, появившиеся в версии NetWare 4.0, значительно повышают производительность NLM-приложений.

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

Файловая система

Файловая система NetWare 4.x обратно совместима с файловой системой NetWare 3.x, но имеет несколько новых свойств, включая интерфейс монитора файловой системы.

Тома и жесткие диски

Сервер NetWare 3.12 или 4.x может иметь до 64 томов, монтируемых одновременно. Каждый том может обеспечивать хранение до 32 TБ (терабайт), если сервер имеет достаточный кэш для хранения структур данных тома, включая FAT (File Allocation Table) тома.

Физическая структура тома

Блоки тома должны быть связаны с реальным физическим носителем. Этот носитель состоит из сегментов областей физического носителя, которые являются разделами (partitions), подготовленными для использования как части тома NetWare.

Том NetWare может быть многосегментным. Поэтому физический носитель тома может состоять из нескольких дисководов.

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

Таблица, которая описывает сегмент, называется таблицей определения тома Volume Definition Table (VDT). В этой таблице содержится имя тома, размер тома и информация о расположении сегментов тома на различных дисках. Каждый том NetWare содержит четыре копии (для обеспечения отказоустойчивости) таблицы VDT в каждом разделе NetWare диска. Кроме таблиц VDT раздел NetWare содержит область переназначения дефектных блоков Hot Fix, остальная часть раздела NetWare отводится под сегменты, которые могут принадлежать различным томам.

На сервере NetWare должен быть один диск, содержащий раздел DOS. Этот раздел является активным и с него после выполнения стартового командного файла DOS autoexec.bat автоматически стартует ОС NetWare.

Логическая структура тома

NetWare всегда оперирует с избыточным числом копий FAT и DET для надежности.

В NetWare для достижения высокой производительности файловой системы реализован обширный динамический кэш файлов в оперативной памяти. Этот кэш построен на блочной основе. Когда приложение читает или пишет в файл, NetWare копирует нужные блоки данных файла в кэш (если они не находятся уже там). Когда файловая кэш-память полностью заполняется, NetWare выполняет процедуру выгрузки в соответствии с алгоритмом «наименее используемый в последнее время» (Least Recently Used, LRU).

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

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

В NetWare в буферах кэш-системы хранятся не только блоки данных файлов, но и такие элементы файловой системы, как FAT, Turbo FAT, кэш-таблица и входы каталогов. Turbo FAT представляет собой таблицу, в которой непосредственно перечислены все блоки файла, если их количество превышает 64. Это обеспечивает быстрый доступ к большим файлам.

При разработке серверных приложений при использовании стандартных функций API работы с файлами программисту нет необходимости задумываться об особенностях реализации системы кэширования файлов. Однако NetWare предоставляет разработчику специальные функции чтения данных непосредственно из буферов кэша (API асинхронного чтения AsyncRead API). Этот API позволяет увеличить производительность NLM-приложений.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *