- •Введение
- •Основная часть Распределенные операционные системы
- •Специфика построения
- •Отличительные черты распределенных систем
- •Причины для объединения распределенных систем в сети
- •Преимущества распределенных систем
- •Недостатки распределенных систем
- •Области применения и примеры распределенных систем
- •Мультипроцессорные системы
- •Гетерогенные мультикомпьютерные системы
- •Сетевые операционные системы
- •Подходы, применяемые при построении сетевых операционных систем
- •Архитектура сетевых операционных систем
- •Монолитные системы
- •Многоуровневые системы
- •Модель клиент-сервер и микроядра
- •Требования, применяемые при построении сетевых операционных систем
- •Преимущества сетевых операционных систем
- •Недостатки сетевых операционных систем
- •Области применения и примеры
- •Гомогенные мультикомпьютерные системы
- •Заключение
- •Используемые источники
Архитектура сетевых операционных систем
Немаловажным аспектом в построении ОС является ее архитектура. Архитектура прошла долгий путь становления от монолитных до нынешних. Давайте рассмотрим этот путь.
Монолитные системы
У монолитных систем отсутствует какая-либо структура (рисунок 4). Они представляют собой совокупность процедур, где каждая процедура при надобности может вызвать другую. В таких системах у каждой процедуры имеется хорошо определенный интерфейс.
На этапе сборки они представляют программные модули, а после уже компилируются в единую систему. В качестве программы они могут быть модульными, но процедуры взаимодействуют в единой области видимости.
Рисунок 4. Структура монолитных систем.
Многоуровневые системы
В процессе структуризации уровни формируются группами функций ОС, то есть осуществляется переход к многоуровневым системам. У каждого уровня ограничено взаимодействие - только с уровнем выше или ниже. Во время выполнения запросы передаются программами или модулями системы именно по этим уровням (рисунок 5).
С течением времени такие системы стали относить к монолитным, так как потребовалась возможность развития и расширения в угоду того, что операционные системы служат довольно долго. Им на смену пришла клиент-серверная модель, тесно связанная с понятием микроядра.
Рисунок 5. Структура многоуровневых систем.
Модель клиент-сервер и микроядра
Концепция данной модели заключается в разбиении операционной системы на несколько серверов посредством использования взаимодействия клиент-сервер и микроядра. При этом у каждого сервера есть отведенный набор функций, которые он должен осуществлять. Например, управлять памятью. Клиентом в такой модели является либо приложение, либо компонент операционной системы. Посылая сообщение, клиент запрашивает сервис. В свою очередь микроядро, коим является ядро нашей ОС, доставляет сообщение серверу-адресату, который выполняет действие, а после другим сообщением ядро возвращает клиенту результат (рисунок 6)
Рисунок 6. Структура модели клиент-сервер.
Требования, применяемые при построении сетевых операционных систем
Главной задачей при построении является то, что система должна управлять использованием ресурсов для обеспечения максимальной эффективности машины. Для грамотного управления ресурсами необходимо для каждого процесса определять, когда и сколько по объему выделять тот или иной ресурс; своевременно обновлять информацию о степени загруженности ресурса.
В идеале сетевая ОС должна быть спроектирована следующим образом: поддерживать возможность работы с SMP, о которых говорилось чуть выше; быть многозадачной и поддерживать нити1 в рамках одного процесса; быть многопользовательской, если того требует задача, для которой система разрабатывается.
Преимущества сетевых операционных систем
Наличие высокостабильных централизованных серверов.
Легкость интегрирования в систему новых технологий и модернизированного оборудования.
Сервера обрабатывают проблемы безопасности.
К серверу можно подключиться удаленно, используя при этом любые типы систем.
Все сетевые ОС в сети, количество которых эквивалентно количеству пользователей, взаимодействуют между собой. В то время как в распределенных ОС всего одна операционная система обслуживает сеть