Введение
Глава 1. Исследования и терминология предметной области 16
1.1. Концепции доски объявлений и DSM в МАС 16
1.2. Возникновение концепции DSM 17
1.3. Описание концепции DSM 21
1.4. Модели консистентности 24
1.4.1. Строгая консистентность 24
1.4.2. Последовательная консистентность 25
1.4.3. Другие глобальные модели 27
1.4.4. Слабая консистентность 29
1.4.5. Консистентность по выходу 30
1.4.6. Ленивая консистентность по выходу 32
1.4.7. Консистентность по входу 32
1.4.8. Заключение 34
1.5. Алгоритмы 34
1.5.1. Алгоритм с центральным сервером 35
1.5.2. Алгоритм миграции данных 37
1.5.3. Алгоритм репликации по чтению 39
1.5.4. Алгоритм полной репликации 40
1.5.5. Заключение 41
1.6. Реализации 41
1.6.1. Linda 42
1.6.2. IVY 43
1.6.3. Munin 43
1.6.4. Midway 44
1.6.5. Orca 45
1.6.6. TreadMarks 45
1.6.7. Grappa 46
1.6.8. Перечень известных DSM решений 47
1.6.9. Заключение 47
1.7. Выводы 49
Глава 2. Постановка и решение задачи 51
2.1. Назначение, требования и соглашения 51
2.1.1. Назначение решения 51
2.1.2. Аппаратное окружение 53
2.1.3. Программное окружение 54
2.1.4. Физическое окружение 55
2.1.5. Сетевое окружение 56
2.2. Решение задачи 58
2.2.1. Усиленная модель консистентности по выходу 59
2.2.2. Роли узлов и алгоритм смены роли 62
2.2.3. Организация сообщений в типичных операциях системы 65
2.2.4. Обеспечение отказоустойчивости 67
2.2.5. Модель прикладного интерфейса 68
2.3. Выводы 71
Глава 3. Программная реализация 73
3.1. Описание реализации прикладного интерфейса 73
3.2. Сообщения 79
3.3. Процесс блокировки 80
3.3.1. Реализация блокировки на запись 80
3.3.2. Реализация блокировки на чтение 82
3.4. Отказоустойчивость 84
3.4.1. Термин «сообщение» и атомарность 84
3.4.2. Действия при выходе узлов из строя 85
3.5. Программная архитектура 87
3.5.1. Верхнеуровневая архитектура 87
3.5.2. Основные компоненты ядра МАКС DSM 88
3.6. Эксперимент 90
3.7. Производительность 95
3.7.1. Производительность для двух узлов 95
3.7.2. Зависимость производительности от количества узлов 103
3.8. Выводы 108
Заключение 111
Список сокращений и условных обозначений 114
Список литературы 116
Список иллюстративного материала 123
Список таблиц 125
Приложение А. Результаты измерений 126


