Параллельное программирование — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(15. Синхронные системы. Алгоритм для консенсуса в случае отказа заданного числа узлов)
(16. Синхронные системы. Проблема двух генералов. Невозможность получения общей информации)
Строка 45: Строка 45:
  
 
===16. Синхронные системы. Проблема двух генералов. Невозможность получения общей информации===
 
===16. Синхронные системы. Проблема двух генералов. Невозможность получения общей информации===
 +
 +
Два процесса в случае ненадежного канала не могут достичь консенсуса.
 +
 
===17. Синхронные системы. Проблема византийских генералов. Невозможность решения при N=3, f=1. Формулировка общей теоремы===
 
===17. Синхронные системы. Проблема византийских генералов. Невозможность решения при N=3, f=1. Формулировка общей теоремы===
 
===18. Синхронные системы. Проблема византийских генералов. Алгоритм для N >= 4, f = 1. Объяснить обобщение для f > 1===
 
===18. Синхронные системы. Проблема византийских генералов. Алгоритм для N >= 4, f = 1. Объяснить обобщение для f > 1===

Версия 14:53, 26 июня 2010

Содержание

Программирование параллельных и распределенных систем

1 билет

2 билет

3. Часы с прямой зависимостью (и их свойства) и матричные часы

4. Взаимное исключение в распределенной системе. Централизованный, алгоритм Лампорта, алгоритм Рикарта и Агравалы

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

6. Согласованное глобальное состояние (согласованный срез). Алгоритм Чанди-Лампорта. Запоминание сообщений на стороне отправителя

7. Глобальные свойства. Стабильные и нестабильные предикаты. Слабый конъюнктивный предикат. Централизованный и распределенный алгоритмы

8. Диффундирующие вычисления. Останов. Алгоритм Дейксты и Шолтена

9. Локально-стабильные предикаты, согласованные интервала, барьерная синхронизация (3 алгоритма). Применение для определения взаимной блокировки

10. Упорядочивание сообщений. Определения, иерархия порядков. Алгоритм для причинно-согласованного порядка

11. Упорядочивание сообщений. Определения, иерархия порядков. Алгоритм для синхронного порядка

12. Общий порядок (total order). Алгоритмы Лампорта и Скина

13. Выбор лидера. Алгоритм Чанди-Робертса, и алгоритм Хирчберга-Синклера

14. Иерархия ошибок в распределенных системах. Отказ узла в асинхронной системе - невозможность консенсуса (доказательство)

  1. Отказ узла
  2. Отказ связи
  3. Неустойчивая связь / пропуск пакетов
  4. Византийская ошибка (сломавшийся процесс может слать любой мусор)

Отказ одного узла в распределенной системе ведет к невозможности консенсуса. Решением является уход от асинхронизации, накладывание ограничений на время ответа.

15. Синхронные системы. Алгоритм для консенсуса в случае отказа заданного числа узлов

Пусть в системе имеется n узлов. Пусть из них максимум f не работают. Тогда можно решить задачу консенсуса:

(я не понял, как это)

16. Синхронные системы. Проблема двух генералов. Невозможность получения общей информации

Два процесса в случае ненадежного канала не могут достичь консенсуса.

17. Синхронные системы. Проблема византийских генералов. Невозможность решения при N=3, f=1. Формулировка общей теоремы

18. Синхронные системы. Проблема византийских генералов. Алгоритм для N >= 4, f = 1. Объяснить обобщение для f > 1