Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
зачёт Сёмкин.docx
Скачиваний:
5
Добавлен:
19.12.2018
Размер:
196.86 Кб
Скачать

13. Именование в сетевых системах.

Локальная ОС поддерживает имена в пределах заданного узла. Это пространство используется разными объектами.

При рассмотрении РС пространство имен должно быть расширено. Имена должны быть использованы в различных контекстах. Для каждого объекта имя должно быть уникально в том контексте, в котором оно используется.

Способы задания уникальных имен:

  1. Использование уникальных идентификаторов ( простой, но сложно реализовать эффективный поиск)

  2. Иерархический способ наименования (уникальность имени достигается путем построения их иерархии для доменной структуры например DNS)

14 И 15. Взаимное исключение в сетевых системах.

Реализация взаимного исключения.

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

 

Основные алгоритмы:

  1. Централизованный алгоритм. Основан на управление доступом к критическому ресурсу посредством координирующего сервера. Есть процесс координатор. Если какой-то процесс хочет войти в критический интервал (интервал, в течение которого некоторый процесс использует некоторый критический ресурс; критические интервалы реализуются на различный узлах) каждый процесс направляет координатору запрос на соответствующие критический ресурс. Координатор проверяет этот ресурс на критичность и ставит запрос в очередь. Алгоритм прост в реализации и минимален по сообщениям, но так как ресурс масштабен, то координатор становится узким местом и может отказывать.

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

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