Sanitizer. Алгоритм поиска deadlock.
Вам нужно реализовать Google TSan алгоритм поиска deadlock в многопоточном коде
с использование механизма LD_PRELOAD.
Алгоритм: Вершинами графа являются мьютексы. Строится граф в котором проводится направленное ребро в порядке захвата мьютексов. Если в графе существует цикл,
то значит в коде возможен потенциальный deadlock.
Необходимо выполнить три пункта:
1. Разработать разделяемую библиотеку sanitizer.so
2. Разработать как минимум три теста на которых показать что разработанный алгоритм работает. Тесты должны быть в отдельной директории со своим Makefile и
скриптами для запуска
3. Если в коде существует потенциальный deadlock, то должна быть выведена полезная информация, которая позволит понять где этот deadlock произошел
Могу прислать готовый пример. Код должен быть предельно задокументирован (чтобы я понял, что там происходит) и очень желательно отдельное текстовое описание с ответами на основные вопросы и описанием работы (для защиты программы у преподавателя)
Борис
МАИ
Все сделано вовремя. Преподаватель сильно не всматриваться, но быстро просмотрев, сказал в...
Илья
Балтийская Государственная Академия Рыбопромыслового Флота (БГАРФ)
Игорь выручил два раза, взяв работу в кратчайшие сроки, и выполнил их на отлично. Большое ...
Андрей
Забайкальский государственный университет
Все очень быстро, автор досконально изучает материал и цены не завышает за работу.
Николай
СПбГТИ(ТУ)
Решение рукописное, была допущена ошибка в работе, но не существенная. Спасибо