Для студентов СПбПУ Петра Великого по предмету ДругиеПоиск состояний гонки в приложениях, исполняемых в среде ОС z/OSПоиск состояний гонки в приложениях, исполняемых в среде ОС z/OS
2024-07-252024-07-25СтудИзба
Курсовая работа: Поиск состояний гонки в приложениях, исполняемых в среде ОС z/OS
Описание
Оглавление
3
Введение
Многопоточные приложения становятся все более и более распро-страненными. Однако ошибки, связанные с параллельным исполнени-ем потоков, являются наиболее неуловимыми и сложными для отлад-ки. А для такой платформы как Mainframe все осложняется тем, что очень многие многопоточные приложения для нее являются достаточно старыми, плохо задокументированными. Тем не менее, их надо поддер-живать. Поэтому необходима автоматизация поиска возможных оши-бок, связанных с параллельным исполнением потоков. Например, для состояний гонки. Состояние гонки - это ситуация, когда два или бо-лее потоков в параллельной программе одновременно обращаются к одной структуре данных в общей памяти, между этими обращениями нет принудительного упорядочивания по времени, и хотя бы одно из этих обращений является записью[1, 20].
Специфика операционной системы z/OS и приложений для нее (в частности, продуктов, разрабатываемых компанией EMC) накладыва-ет определенные ограничения и предъявляет следующие требования к детектору:
Детектор должен иметь возможность
Введение | 4 | ||
1. | Обзор | 6 | |
1.1. | Статический и динамический анализ . . . . . . . . . . . . | 6 | |
1.2. | Алгоритмы динамического анализа. Алгоритм Лампорта | 10 | |
1.3. | Алгоритмы динамического анализа. Алгоритм lockset . . | 13 | |
1.4. | Направления развития алгоритмов динамического поиска | ||
состояниягонки........................ | 14 | ||
1.5. | Динамический анализ в среде ОС z/OS: on-the-fly, post- | ||
mortem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | 16 | ||
1.6. | Datacollider . . . . . . . . . . . . . . . . . . . . . . . . . . . | 21 | |
2. | Реализация прототипа детектора | 24 | |
2.1. | Общая схема поиска состояний гонки . . . . . . . . . . . | 24 | |
2.2. | Инициализатор ........................ | 25 | |
2.3. | Обработчик........................... | 29 | |
2.4. | АнализаторGTFтрассы................... | 31 | |
2.5. | Путиразвития......................... | 33 | |
2.6. | Тестирование и границы применимости . . . . . . . . . . | 33 | |
3. | Заключение | 37 | |
Список литературы | 38 |
3
Введение
Многопоточные приложения становятся все более и более распро-страненными. Однако ошибки, связанные с параллельным исполнени-ем потоков, являются наиболее неуловимыми и сложными для отлад-ки. А для такой платформы как Mainframe все осложняется тем, что очень многие многопоточные приложения для нее являются достаточно старыми, плохо задокументированными. Тем не менее, их надо поддер-живать. Поэтому необходима автоматизация поиска возможных оши-бок, связанных с параллельным исполнением потоков. Например, для состояний гонки. Состояние гонки - это ситуация, когда два или бо-лее потоков в параллельной программе одновременно обращаются к одной структуре данных в общей памяти, между этими обращениями нет принудительного упорядочивания по времени, и хотя бы одно из этих обращений является записью[1, 20].
Специфика операционной системы z/OS и приложений для нее (в частности, продуктов, разрабатываемых компанией EMC) накладыва-ет определенные ограничения и предъявляет следующие требования к детектору:
Детектор должен иметь возможность
Характеристики курсовой работы
Предмет
Учебное заведение
Семестр
Просмотров
1
Размер
591 Kb
Список файлов
Поиск состояний гонки в приложениях, исполняемых в среде ОС z:OS.doc