Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4 курс. Зима. Информационные системы. Орлова. Ш....doc
Скачиваний:
5
Добавлен:
09.12.2018
Размер:
194.56 Кб
Скачать

29. Програм. Обеспечение распределенных систем

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

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

3. Программное обеспечение (ПО) промежуточного уровня является или надстройкой над сетевой ОС, или промежуточным слоем между распределенной и сетевой ОС.

4. Распределенные системы управления БД-х. Это система состоящая из нескольких СУБД, работающих на локальных узлах, соединенных средствами обработки сообщений. Словарь данных Р СУБД содержит обычную информацию, необходимую для управления данными, а также информацию о месте нахождения тиражирования и фрагментации данных различных реляционных таблиц. Транзакция в таких системах уже не контролируется одним программным модулем, т.к. она может вызывать несколько процессов в различных узлах, контролируемых независимыми программными модулями. РСУБД связывает узлы, находящиеся на значительном географическом расстоянии и может связывать локальные сети, узлы которых обслуживаются разными ОС-ми.

30. Проблемы синхронизации в распредел. Системах

Возникают в результате решения следующих задач:

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

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

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

Т.о. основные свойства транзакции в распределенных системах:

1. Атомарность: гарантирует, что она либо полностью выполняется, либо полностью не выполняется. При этом другие процессы не могут наблюдать каких-либо промежуточных состояний.

2. Непротиворечивость значит, что если у системы до начала транзакции имелись некоторые соглашения, то они будут сохраняться и после её завершения.

3. Изолированность: если 2 или более транзакции происходят одновременно, то гарантирована возможность их одновременного выполнения, а итоговый результат будет таким же, как если бы они выполнялись одна за другой в определенном порядке.

4. Долговечность, т.е никакие действия в системе после завершения транзакции не влияют на её результат и никакие сбои не могут привести к потере результатов транзакции.