Выбор оптимальных сетевых решений на базе многозадачных операционных систем для построения компьютерной сети вуза
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: банковские рефераты, курсовые работы
| Добавил(а) на сайт: Митькин.
Предыдущая страница реферата | 15 16 17 18 19 20 21 22 23 24 25 | Следующая страница реферата
. совместное использование информации;
. передачу сообщений;
. групповое планирование времени;
. дизайн электронных форм;
. разработку приложений,
Exchange построен по архитектуре "клиент/сервер", что позволяет достичь
наивысшей производительности. Серверная часть обеспечивает управление
службой каталога и синхронизацию каталогов на всех серверах, управление
доступом к информации, хранение структурированного архива документов и
сообщений, передачу и маршрутизацию сообщений, контроль за состоянием
серверов и соединений, а также репликацию ин формации.
Серверная часть работает на платформе Windows NT и может использовать
любой из сетевых протоколов -IPX/SFX, NetBIOS, TCP/IP, AppleTalk.
Клиентская часть поддерживает OLE2, что дает возможность редактировать
встроенные объекты в теле сообщения и переносить объекты из других
приложений. Такая поддержка существует для DOS. Windows 3,х, Windows 95,
Windows NT, UNIX. Возможно подключение удаленных пользователей.
Правила автоматической обработки сообщений позволяют перенаправлять, сортировать и отвечать на определенные (по заданным пользователем
критериям) сообщения.
Хорошо продуман процесс администрирования. С одного рабочего места
администратор может конфигурировать и управлять всей системой, а также
просматривать ее струну с помощью удобного графического интерфейса, При
этом он имеет возможность ограничивать размер папок и срок хранения
информации в них, определять права доступа к папкам и синхронизировать их
содержимое для различных серверов.
Высокая степень надежности достигается благодаря интеллектуальной
маршрутизации, которая устанавливает несколько соединений между одними и
теми же серверами. Не последнюю роль играет отказоустойчивость, позволяющая
восстанавливать информацию после сбоев. Постоянные проверки состояния
системы с автоматическим уведомлением об ошибках и запуском
восстанавливающих процессов обеспечивают своевременность и оперативность
действий администратора.
Надежная система защиты позволяет просматривать информацию только
клиентам, обладающим соответствующими правами, Кроме того, сообщения мот
быть зашифрованы личным ключом и снабжены электронной подписью.
Exchange имеет универсальный интерфейс, который обеспечивает
взаимодействие с Microsoft Mail, Lotus cc:Mail, IBM PROFS, а также
поддерживает стандартные протоколы (Х.400, TCP/IP, MAPI, X.500, PPP, ODBC и
др.). Средства разработки Exchange предлагают широкий выбор возможностей
для создания собственных приложений с использованием Visual Basic, Visual
С, OLE Messaging, MAP] PDK и Exchange SDK.
Средства связи с Internet
Microsoft Exchange Sever - первая серверная программа для обмена
сообщениями с интегрированными средствами групповой работы и выходом в
Internet. Internet Mail Connector - составная часть Exchange - позволяет
обмениваться сообщениями с пользователями Internet, применяя? обмена
протоколы SMTP, MIME, UUENCODE.
Internet Mail Connector можно настроить как SMTP-клиент, SMTP-сервер и как
SMTP-клиент и сервер одно временно. Эта программа может функционировать как
SMTP-хост, выполняя маршрутизацию при передаче сообщений. В середине 1996
года появились дополни тельные продуты для интеграции MS Exchange и Inter
net. Прежде всего это Microsoft Exchange WEB Connector, служащий для
интеграции средств обработки сообщений Microsoft Exchange с WWW.
Возможность обмена информацией с Microsoft Internet Information Server
(продукт для организации серверов Internet - основной в своей категории)
позволяет пользователям Exchange получать информацию с WWW-серверов. Web
Connector может автоматически преобразовывать сообщения и другую
информацию, хранящуюся на сервере Exchange, в WWW-страницы. Microsoft
Internet News Connector работает со службами новостей так же, как с
привычными папками общего доступа.
Как мы видим, спектр продуктов, работающих под Windows NT, довольно широк и
обеспечивает полное удовлетворение запросов сетевых специалистов. На
сегодняшний день они имеют все необходимое для по строения
высокоэффективных сетевых комплексов, решающих разнообразные задачи.
Глава 4. Анализ возможностей ОС UNIX
Сети, построенные из компьютеров под управлением ОС UNIX, несколько
отличаются от основанных на DOS одноранговых ЛВС, а также и от NetWare, LAN
Manager и LAN Server. В данной главе рассматриваются эти различия.
Примечательно, что лучшие свойства операционных систем для одноранговых ЛВС
NetWare и LAN Manager/LAN Server можно найти в ЛВС, основанных на ОС UNIX.
Вначале единственным недостатком операционной системы UNIX было, пожалуй, то, что она довольно дорога, сложна в использовании и предназначалась в
основном для работы на дорогих компьютерах для решения сложных инженерных и
научных задач. Но, в течение ряда лет со времени ее создания, было
приложено немало труда программистов для се усовершенствования. Несмотря
на то, что UNIX довольно громоздка и разрабатывалась как операционная
система общего применения, она тем не менее может эффективно применяться
как основа для организации ЛВС, в том числе с применением RISC-
компьютеров, таких как IBM AS/6000.
ЛВС, управляемые операционной системой UNIX, для передачи данных между
компьютерами часто используют TCP/IP. Формально, TCP/IP представляет собой
два протокола, а более точно TCP/IP используется в качестве термина для
обозначения набора протоколов и вспомогательного программного обеспечения.
На рынке предлагаются несколько операционных систем для применения UNIX-
компьютеров в качестве файловых серверов, выпускаемых разными
производителями сетевых ОС. В этой главе проводится детальное рассмотрение
трех лучших из таких систем: PC Interface (поставляемая фирмой IBM как АIХ
Access for DOS Users или AADU), POWERfusion вместе с POWERserve и Network
File System (NFS).
UNIX является многопользовательской, многозадачной операционной системой
общего назначения. Компьютер, работающий под управлением UNIX, может
одновременно решать несколько задач, принадлежащих раз личным
пользователям. При этом процесс управления этими задачами осуществляется с
разных терминалов, присоединенных к основной UNIX-машине. Для получения
разрешения работы на компьютере вначале необходимо пройти процедуру
присоединения (login). В системе UNIX зарегистрированные пользователи
объединены в группы, и системный администратор включает каждого нового
пользователя в одну из таких групп.
В 1969 году в компании Bell Laboratories группой сотрудников AT&T была
создана первая версия операционной системы UNIX для малой ЭВМ PDP-7. В 1973
году Кэн Томпсон и Дэннис Ритчи перевели операционную систему UNIX на язык
программирования Си. Это облегчило ее использование на ЭВМ различного типа.
С 1973 года ядро UNIX практически не изменялось.
Начиная с 1974 года, фирма AT&T лицензировала операционную систему UNIX
различным университетам для образовательных целей, а через не сколько лет
сделала ее коммерческим продуктом. В настоящее время фирма AT&T продает
лицензии на использование исходных текстов операционной системы UNIX
производителям компьютеров. Это стало возможным благо даря тому, что эта
система приобрела широкую популярность и появилось большое количество
прикладных программ для нее.
Производители новых компьютеров, обеспечив совместимость своей продукции с
операционной системой и покупая лицензию на ОС у AT&T, автоматически
гарантируют работоспособность всего прикладного программного обеспечения
для этой операционной системы на своих изделиях.
Сердцем ОС UNIX является ее ядро, работающее в режиме разделения времени.
Программное обеспечение операционной системы выполняет также функции
распределения ресурсов между прикладными программами, одновременно
работающими на компьютере. Интерфейс с пользователем в системе UNIX
осуществляется программой-оболочкой (shell), которая может работать
посредством командных строк или с помощью графического пользовательского
интерфейса, позволяя копировать - файлы, запускать прикладные программы и
т. п. Кроме того, в состав операционной системы UNIX входят десятки
мегабайт прикладного программного обеспечения и утилит, использование
которых требует определенной квалификации от пользователей. Вот почему UNIX
приобрела репутацию сложной и запутанной операционной системы.
4.1 Обзор архитектуры
В этом разделе рассмотрена архитектура верхнего уровня системы UNIX.
Технические средства UNIX выполняют функции, обеспечивающие
функционирование операционной системы и перечисленные в разделе программ.
Поскольку программы не зависят от аппаратуры, их легко переносить из одной
системы UNIX в другую, функционирующую на другом комплексе технических
средств, если только в этих программах не подразумевается работа с
конкретным оборудованием. Например, программы, рассчитанные на определенный
размер машинного слова, гораздо труднее переводить на другие машины по
сравнению с программами, не требующими подобных установлений.
Программы, подобные командному процессору shell и редакторам, взаимодействуют с ядром при помощи хорошо определенного набора обращений к
операционной системе. Обращения к операционной системе понуждают ядро к
выполнению различных операций, которых требует вызывающая программа, и
обеспечивают обмен данными между ядром и программой. Некоторые из программ
в стандартных конфигурациях системы известны как команды, однако на одном
уровне с ними могут располагаться и доступные пользователю программы.
Другие прикладные программы располагаются выше указанных программ, на
верхнем уровне. Пользователь может расширить иерархическую структуру на
столько уровней, сколько необходимо. В самом деле, стиль программирования, принятый в системе UNIX, допускает разработку комбинации программ, выполняющих одну и ту же, общую задачу.
Многие прикладные подсистемы и программы, составляющие верхний уровень
системы, такие как командный процессор shell, редакторы, SCCS (система
обработки исходных текстов программ) и пакеты программ подготовки
документации, постепенно становятся синонимом понятия "система UNIX".
Однако все они пользуются услугами программ нижних уровней и в конечном
счете ядра с помощью набора обращений к операционной системе. В версии V
принято 64 типа обращений к операционной системе, из которых немногим
меньше половины используются часто. Они имеют несложные параметры, что
облегчает их использование, предоставляя при этом большие возможности
пользователю. Набор обращений к операционной системе вместе с реализующими
их внутренними алгоритмами составляют "тело" ядра, в связи с чем
рассмотрение операционной системы UNIX в этом разделе сводится к подробному
изучению и анализу обращений к системе и их взаимодействия между собой.
Короче говоря, ядро реализует функции, на которых основывается выполнение
всех прикладных программ в системе UNIX, и им же определяются эти функции.
В этой главе часто употребляются термины "система UNIX", "ядро" или
"система", однако при этом имеется ввиду ядро операционной системы UNIX, что и должно вытекать из контекста.
Функции операционной системы
Выполняя различные элементарные операции по запросам пользовательских
процессов, ядро обеспечивает функционирование пользовательского интерфейса, описанного выше. Среди функций ядра можно отметить:
. Управление выполнением процессов посредством их создания, завершения или приостановки и организации взаимодействия между ними.
. Планирование очередности предоставления выполняющимся процессам времени центрального процессора (диспетчеризация). Процессы работают с центральным процессором в режиме разделения времени: центральный процессор выполняет процесс, по завершении отсчитываемого ядром кванта времени процесс приостанавливается и ядро активизирует выполнение другого процесса. Позднее ядро запускает приостановленный процесс.
. Выделение выполняемому процессу оперативной памяти. Ядро операционной системы дает процессам возможность совместно использовать участки адресного пространства на определенных условиях, защищая при этом адресное пространство, выделенное процессу, от вмешательства извне. Если системе требуется свободная память, ядро освобождает память, временно выгружая процесс на внешние запоминающие устройства, которые называют устройствами выгрузки. Если ядро выгружает процессы на устройства выгрузки целиком, такая реализация системы UNIX называется системой со свопингом (подкачкой); если же на устройство выгрузки выводятся страницы памяти, такая система называется системой с замещением страниц.
. Выделение внешней памяти с целью обеспечения эффективного хранения информации и выборка данных пользователя. Именно в процессе реализации этой функции создается файловая система. Ядро выделяет внешнюю память под пользовательские файлы, мобилизует неиспользуемую память, структурирует файловую систему в форме, доступной для понимания, и защищает пользовательские файлы от несанкционированного доступа.
. Управление доступом процессов к периферийным устройствам, таким как терминалы, ленточные устройства, дисководы и сетевое оборудование.
Выполнение ядром своих функций довольно очевидно. Например, оно узнает, что
данный файл является обычным файлом или устройством, но скрывает это
различие от пользовательских процессов. Так же оно, форматируя информацию
файла для внутреннего хранения, защищает внутренний формат от
пользовательских процессов, возвращая им неотформатированный поток байтов.
Наконец, ядро реализует ряд необходимых функций по обеспечению выполнения
процессов пользовательского уровня, за исключением функций, которые могут
быть реализованы на самом пользовательском уровне. Например, ядро выполняет
действия, необходимые shell'у как интерпретатору команд: оно позволяет
процессору shell читать вводимые с терминала данные, динамически порождать
процессы, синхронизировать выполнение процессов, открывать каналы и
переадресовывать ввод-вывод. Пользователи могут разрабатывать свои версии
командного процессора shell с тем, чтобы привести рабочую среду в
соответствие со своими требованиями, не затрагивая других пользователей.
Такие программы пользуются теми же услугами ядра, что и стандартный
процессор shell.
Предполагаемая аппаратная среда
Выполнение пользовательских процессов в системе UNIX осуществляется на двух
уровнях: уровне пользователя и уровне ядра. Когда процесс производит
обращение к операционной системе, режим выполнения процесса переключается с
режима задачи (пользовательского) на режим ядра: операционная система
пытается обслужить запрос пользователя, возвращая код ошибки в случае
неудачного завершения операции. Даже если пользователь не нуждается в каких-
либо определенных услугах операционной системы и не обращается к ней с
запросами, система еще выполняет учетные операции, связанные с
пользовательским процессом, обрабатывает прерывания, планирует процессы, управляет распределением памяти и т.д. Большинство вычислительных систем
разнообразной архитектуры (и соответствующие им операционные системы)
поддерживают большее число уровней, чем указано здесь, однако уже двух
режимов, режима задачи и режима ядра, вполне достаточно для системы UNIX.
Основные различия между этими двумя режимами:
. В режиме задачи процессы имеют доступ только к своим собственным инструкциям и данным, но не к инструкциям и данным ядра (либо других процессов). Однако в режиме ядра процессам уже доступны адресные пространства ядра и пользователей. Например, виртуальное адресное пространство процесса может быть поделено на адреса, доступные только в режиме ядра, и на адреса, доступные в любом режиме.
. Некоторые машинные команды являются привилегированными и вызывают возникновение ошибок при попытке их использования в режиме задачи.
Например, в машинном языке может быть команда, управляющая регистром состояния процессора; процессам, выполняющимся в режиме задачи, она недоступна.
Проще говоря, любое взаимодействие с аппаратурой описывается в терминах режима ядра и режима задачи и протекает одинаково для всех пользовательских программ, выполняющихся в этих режимах. Операционная система хранит внутренние записи о каждом процессе, выполняющемся в системе.
Несмотря на то, что система функционирует в одном из двух режимов, ядро
действует от имени пользовательского процесса. Ядро не является какой-то
особой совокупностью процессов, выполняющихся параллельно с
пользовательскими, оно само выступает составной частью любого
пользовательского процесса. Сделанный вывод будет скорее относиться к
"ядру", распределяющему ресурсы, или к "ядру", производящему различные
операции, и это будет означать, что процесс, выполняемый в режиме ядра, распределяет ресурсы и производит соответствующие операции. Например, командный процессор shell считывает вводной поток с терминала с помощью
запроса к операционной системе. Ядро операционной системы, выступая от
имени процессора shell, управляет функционированием терминала и передает
вводимые символы процессору shell. Shell переходит в режим задачи, анализирует поток символов, введенных пользователем и выполняет заданную
последовательность действий, которые могут потребовать выполнения и других
системных операций.
Прерывания и особые ситуации
Система UNIX позволяет таким устройства, как внешние устройства ввода-
вывода и системные часы, асинхронно прерывать работу центрального
процессора. По получении сигнала прерывания ядро операционной системы
сохраняет свой текущий контекст (застывший образ выполняемого процесса), устанавливает причину прерывания и обрабатывает прерывание. После того, как
прерывание будет обработано ядром, прерванный контекст восстановится и
работа продолжится так, как будто ничего не случилось. Устройствам обычно
приписываются приоритеты в соответствии с очередностью обработки
прерываний. В процессе обработки прерываний ядро учитывает их приоритеты и
блокирует обслуживание прерывания с низким приоритетом на время обработки
прерывания с более высоким приоритетом.
Особые ситуации связаны с возникновением незапланированных событий, вызванных процессом, таких как недопустимая адресация, задание
привилегированных команд, деление на ноль и т.д. Они отличаются от
прерываний, которые вызываются событиями, внешними по отношению к процессу.
Особые ситуации возникают прямо "посредине" выполнения команды, и система, обработав особую ситуацию, пытается перезапустить команду; считается, что
прерывания возникают между выполнением двух команд, при этом система после
обработки прерывания продолжает выполнение процесса уже начиная со
следующей команды. Для обработки прерываний и особых ситуаций в системе
UNIX используется один и тот же механизм.
Уровни прерывания процессора
Ядро иногда обязано предупреждать возникновение прерываний во время
критических действий, могущих в случае прерывания запортить информацию.
Например, во время обработки списка с указателями возникновение прерывания
от диска для ядра нежелательно, т.к. при обработке прерывания можно
запортить указатели, что можно увидеть на примере в следующей главе. Обычно
имеется ряд привилегированных команд, устанавливающих уровень прерывания
процессора в слове состояния процессора. Установка уровня прерывания на
определенное значение отсекает прерывания этого и более низких уровней, разрешая обработку только прерываний с более высоким приоритетом. Если ядро
игнорирует прерывания от диска, в этом случае игнорируются и все остальные
прерывания, кроме прерываний от часов и машинных сбоев.
Распределение памяти
Ядро постоянно располагается в оперативной памяти, наряду с выполняющимся в
данный момент процессом (или частью его, по меньшей мере). В процессе
компиляции программа-компилятор генерирует последовательность адресов, являющихся адресами переменных и информационных структур, а также адресами
инструкций и функций. Компилятор генерирует адреса для виртуальной машины
так, словно на физической машине не будет выполняться параллельно с
транслируемой ни одна другая программа.
Когда программа запускается на выполнение, ядро выделяет для нее место в
оперативной памяти, при этом совпадение виртуальных адресов, сгенерированных компилятором, с физическими адресами совсем необязательно.
Ядро, взаимодействуя с аппаратными средствами, транслирует виртуальные
адреса в физические, т.е. отображает адреса, сгенерированные компилятором, в физические, машинные адреса. Такое отображение опирается на возможности
аппаратных средств, поэтому компоненты системы UNIX, занимающиеся им, являются машинно-зависимыми.
Рекомендуем скачать другие рефераты по теме: красный диплом, рефераты по предметам.
Категории:
Предыдущая страница реферата | 15 16 17 18 19 20 21 22 23 24 25 | Следующая страница реферата