Билет 6. Алгоритмы синхронизации взаимного исключения

Билет 4

Динамическое связывание. Семантика вызова удаленных процедур в случае отказов.

Семантика вызова удаленных процедур в случае отказов RPC

1. Клиент не может определить местонахождение сервера. Возвращ код ошибки.

2. Потерян запрос от клиента к серверу, через определенное время процесс поворяется.

3. Потеряно ответное сообщение от сервера.

Процедуры:

1. Идемпотентные (можно повторить без изменения результата).

2. Неидемпотентные.

Способы:

1) Приведение всех процедур к идемпотентному виду.

2) Последовательная нумерация всех запросов клиентским ядром.

3) Если сервер потерпел аварию после получения запроса:

· Повторное выполнение при восстановлении сервера

· Генерация сообщения об ошибках

4) Клиент потерпел аварию после отсылки запроса.

Вычисления (неожиданные) наз. Сиротами они могут:

· Уничтожаться

· перевоплощаться

В распределенных системах при межпроцессорном взаимодействии исп. динамическое связывание.

Его начальным моментом является формальное деление.

Спецификация содержит:

1. имя сервера

2. номер версии

3. список процедур и услуг.

Для каждой процедуры дается описание параметров с усл. Явл. Ли он вх./вых.отностельно сервера.

При запуске сервера его 1м действием явл. Передача своего интерфейса специальной программе «binder»- процесс регистрации сервера.

Регистрационная запись:

1. Имя сервера

2. Номер версии

3. Идентификатор

4. Описатель местонахождения

Билет 5 Проблема синхронизации процессов. Алгоритм логических часов.

Обеспечение синхронизации при отсутствии общей раздел. памяти делятс на 2 задачи:

1. Обеспечение по порядку

2. Реализация критических секций

Алгоритм логических часов.

Для синхронизации важно задание правильного порядка событий. Для этого ввод. Для 2х произвольных событий а и б соотношение «случилось до» а(R)б

Это отношение транзитивно а(R)б, б(R)с => а(R)с

Остается задача такого создания такого механического ведения времени, когда для каждого события а м.б. указано время Т(а), с кот. Согласны все процессы системы. Если а(R)б. то Т(а) < Т(б)

Время может корректироваться только в большую сторону.

Билет 6. Алгоритмы синхронизации взаимного исключения

1. Централизованный алгоритм

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

2. Распределенный алгоритм

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

3. Алгоритм токен ринг.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: